Skip to content

SagarBhadra01/ai-learning-platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

23 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ LearnSphere: AI-Powered Learning Platform

License: MIT Node.js Version React MongoDB TypeScript Vite

๐ŸŽ“ Transform Learning with AI-Generated Courses

Revolutionizing education through intelligent course creation and gamified learning experiences


๐ŸŒŸ Overview

LearnSphere is a cutting-edge, AI-powered learning platform that democratizes education by enabling anyone to create comprehensive, structured courses on any topic within minutes. Built with modern web technologies and powered by Google's Gemini AI, it combines intelligent content generation with gamification to deliver an engaging learning experience.

โœจ Key Highlights

  • ๐Ÿค– AI-Powered Course Generation: Create complete courses with structured chapters and lessons using advanced AI
  • ๐ŸŽฎ Gamified Learning: XP system, levels, daily streaks, and global leaderboards
  • ๐Ÿ” Secure Authentication: Robust user management with Clerk integration
  • ๐Ÿ“ฑ Responsive Design: Beautiful, modern UI that works seamlessly across all devices
  • ๐Ÿ† Progress Tracking: Comprehensive learning analytics and achievement system
  • ๐ŸŽฏ Personalized Content: Adaptive difficulty levels and customized learning paths

Authors

Sagar Bhadra , Arpan Sarkar , Subhamoy Datta , Barshan Majumdar , Indrajit Bhowmik

๐ŸŽฅ Demo & Screenshots

๐Ÿ–ฅ๏ธ Desktop Experience

Desktop Dashboard

๐Ÿ“ฑ Mobile Responsive

Mobile View

๐Ÿค– AI Course Generation

AI Generation


๐Ÿš€ Features

๐ŸŽฏ Core Features

  • ๐Ÿค– Intelligent Course Creation: Generate comprehensive courses on any topic with customizable difficulty levels
  • ๐Ÿ“š Structured Learning: Organized chapters, lessons with rich HTML content, and interactive quizzes
  • ๐ŸŽฎ Gamification Engine: XP points, level progression, daily streaks, and competitive leaderboards
  • ๐Ÿ“Š Analytics Dashboard: Track learning progress, completion rates, and performance metrics
  • ๐Ÿ” Smart Search: Find courses quickly with intelligent search and filtering

๐Ÿ›ก๏ธ Security & Authentication

  • ๐Ÿ” Secure Login: Multi-provider authentication via Clerk (Google, email)
  • ๐Ÿ‘ค User Profiles: Personalized dashboards with progress tracking
  • ๐Ÿ›ก๏ธ Data Protection: Industry-standard security practices and data encryption

๐ŸŽจ User Experience

  • ๐Ÿ“ฑ Responsive Design: Optimized for desktop, tablet, and mobile devices
  • โšก Fast Loading: Optimized performance with lazy loading and caching
  • ๐ŸŒ Accessibility: WCAG compliant with screen reader support

๐Ÿ—๏ธ Architecture & Tech Stack

๐Ÿ›๏ธ System Architecture

graph TB
    A[React Frontend] --> B[Express API]
    B --> C[MongoDB Atlas]
    B --> D[Google Gemini AI]
    A --> E[Clerk Auth]
    B --> F[Course Generator]
    F --> G[Content Parser]
    G --> H[Quiz Engine]
Loading

๐Ÿ› ๏ธ Technology Stack

Frontend

  • โš›๏ธ React 18 with TypeScript for type-safe development
  • โšก Vite for lightning-fast build and development
  • ๐ŸŽจ Tailwind CSS for modern, responsive styling
  • ๐Ÿ” Clerk for authentication and user management
  • ๐Ÿ“ก Axios for API communication
  • ๐ŸŽญ Lucide React for beautiful icons

Backend

  • ๐ŸŸข Node.js with Express.js framework
  • ๐Ÿƒ MongoDB with Mongoose ODM
  • ๐Ÿค– Google Gemini AI for content generation
  • ๐Ÿ”’ JWT for secure token management
  • ๐ŸŒ CORS for cross-origin resource sharing

Development & Deployment

  • ๐Ÿ“ฆ npm/yarn for package management
  • ๐Ÿ”ง ESLint & Prettier for code quality
  • ๐Ÿš€ Vercel/Netlify ready deployment
  • ๐Ÿ“Š MongoDB Atlas for cloud database

๐Ÿš€ Quick Start

๐Ÿ“‹ Prerequisites

Before you begin, ensure you have the following installed:

  • ๐Ÿ“ฆ Node.js (v18.x or later)
  • ๐Ÿƒ MongoDB (local instance or MongoDB Atlas)
  • ๐Ÿ”‘ Clerk Account (for authentication)
  • ๐Ÿค– Google Gemini API Key

โšก Installation

  1. Clone the Repository

    git clone https://github.com/SagarBhadra01/ai-learning-platform.git
    cd ai-learning-platform
  2. Backend Setup

    cd backend
    npm install

    Create a .env file in the backend directory:

    PORT=5001
    MONGO_URI=your_mongodb_connection_string
    GEMINI_API_KEY=your_google_gemini_api_key
    CLERK_SECRET_KEY=your_clerk_secret_key
    NODE_ENV=development
  3. Frontend Setup

    cd ../frontend
    npm install

    Create a .env.local file in the frontend directory:

    VITE_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
    VITE_API_BASE_URL=http://localhost:5001
    VITE_GEMINI_API_KEY=your_frontend_gemini_api_key
  4. Start Development Servers

    Backend (Terminal 1):

    cd backend
    npm run dev

    Frontend (Terminal 2):

    cd frontend
    npm run dev
  5. ๐ŸŽ‰ Access the Application

    Open your browser and navigate to http://localhost:5173


๐Ÿ“ Project Structure

ai-learning-platform/
โ”œโ”€โ”€ ๐Ÿ“ backend/                 # Express.js API Server
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ models/             # MongoDB Models (User, Course, Progress)
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ routes/             # API Routes (auth, courses, users)
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ middleware/         # Custom Middleware (auth, validation)
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ services/           # Business Logic (AI, gamification)
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ config/             # Configuration Files
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ server.js           # Main Server Entry Point
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ .env                # Environment Variables
โ”œโ”€โ”€ ๐Ÿ“ frontend/               # React Frontend Application
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ src/
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ components/     # Reusable UI Components
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ pages/          # Route Components
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ hooks/          # Custom React Hooks
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ services/       # API Service Layer
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ utils/          # Helper Functions
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“ types/          # TypeScript Definitions
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ main.tsx        # Application Entry Point
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ index.html          # HTML Template
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ vite.config.ts      # Vite Configuration
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ .env.local          # Environment Variables
โ”œโ”€โ”€ ๐Ÿ“„ README.md               # Project Documentation
โ”œโ”€โ”€ ๐Ÿ“„ LICENSE                 # MIT License
โ””โ”€โ”€ ๐Ÿ“„ package.json            # Root Package Configuration

๐Ÿ“š API Documentation

๐Ÿ”— Core Endpoints

Authentication

POST   /api/auth/register      # User Registration
POST   /api/auth/login         # User Login
GET    /api/auth/profile       # Get User Profile
PUT    /api/auth/profile       # Update Profile

Courses

GET    /api/courses           # Get All Courses
POST   /api/courses           # Create New Course
GET    /api/courses/:id       # Get Course by ID
PUT    /api/courses/:id       # Update Course
DELETE /api/courses/:id       # Delete Course

Learning Progress

GET    /api/progress/:userId   # Get User Progress
POST   /api/progress/complete  # Mark Lesson Complete
GET    /api/leaderboard        # Global Leaderboard

๐Ÿ“– Detailed API Reference

For comprehensive API documentation with examples, visit our API Documentation


๐ŸŽฎ Gamification System

๐Ÿ† XP & Leveling System

  • ๐Ÿ“– Course Completion: 100-500 XP based on difficulty
  • โœ… Lesson Completion: 10-50 XP per lesson
  • ๐ŸŽฏ Quiz Performance: 5-25 XP based on score
  • ๐Ÿ”ฅ Daily Streaks: Bonus XP for consecutive learning days
  • ๐Ÿ… Achievements: Special XP rewards for milestones

๐Ÿค Contributing

We welcome contributions from the community! Here's how you can help:

๐Ÿ› ๏ธ Development Setup

  1. Fork the Repository on GitHub
  2. Clone your Fork locally
  3. Create a Feature Branch: git checkout -b feature/amazing-feature
  4. Make your Changes with proper commit messages
  5. Test Thoroughly - ensure all tests pass
  6. Submit a Pull Request with detailed description

๐Ÿ“ Contribution Guidelines

  • ๐Ÿ› Bug Reports: Use GitHub Issues with detailed reproduction steps
  • โœจ Feature Requests: Propose new ideas with clear use cases
  • ๐Ÿ’ป Code Style: Follow ESLint and Prettier configurations
  • ๐Ÿงช Testing: Add tests for new features and bug fixes
  • ๐Ÿ“š Documentation: Update docs for any API or feature changes

๐ŸŽฏ Areas for Contribution

  • ๐ŸŒ Internationalization: Multi-language support
  • ๐Ÿ“ฑ Mobile App: React Native implementation
  • ๐Ÿค– AI Improvements: Enhanced course generation algorithms
  • ๐ŸŽจ UI/UX: Design improvements and animations
  • โšก Performance: Optimization and caching strategies

๐Ÿ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

MIT License

Copyright (c) 2025 Sagar Bhadra

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

๐Ÿ™ Special Thanks

  • ๐Ÿค– Google Gemini Team for providing powerful AI capabilities
  • โš›๏ธ React Community for the amazing ecosystem
  • ๐Ÿ” Clerk Team for seamless authentication solutions
  • ๐ŸŒ Open Source Community for inspiration and resources

๐Ÿ“Š Project Stats

GitHub Stars GitHub Forks GitHub Issues GitHub Pull Requests

GitHub Repo Size GitHub Language Count GitHub Top Language GitHub Last Commit


๐Ÿš€ What's Next?

๐Ÿ”ฎ Roadmap 2025

  • ๐ŸŒ Multi-language Support - Global accessibility
  • ๐Ÿ“ฑ Mobile Application - Native iOS/Android apps
  • ๐Ÿค Collaborative Learning - Group courses and study rooms
  • ๐ŸŽฅ Video Integration - YouTube and custom video support
  • ๐Ÿ”Š Audio Lessons - Text-to-speech and podcasts
  • ๐Ÿง  Advanced AI - Personalized learning paths
  • ๐Ÿ“ˆ Analytics Dashboard - Detailed learning insights
  • ๐Ÿ’ณ Monetization - Premium features and course marketplace


Made with โค๏ธ by Sagar Bhadra , Arpan Sarkar , Subhamoy Datta , Barshan Majumdar , Indrajit Bhowmik | Powered by AI ๐Ÿค–

"Education is the most powerful weapon which you can use to change the world." - Nelson Mandela

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors