Revolutionizing education through intelligent course creation and gamified learning experiences
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.
- ๐ค 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
Sagar Bhadra , Arpan Sarkar , Subhamoy Datta , Barshan Majumdar , Indrajit Bhowmik
- ๐ค 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
- ๐ 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
- ๐ฑ 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
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]
- โ๏ธ 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
- ๐ข 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
- ๐ฆ npm/yarn for package management
- ๐ง ESLint & Prettier for code quality
- ๐ Vercel/Netlify ready deployment
- ๐ MongoDB Atlas for cloud database
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
-
Clone the Repository
git clone https://github.com/SagarBhadra01/ai-learning-platform.git cd ai-learning-platform -
Backend Setup
cd backend npm installCreate a
.envfile 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
-
Frontend Setup
cd ../frontend npm installCreate a
.env.localfile 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
-
Start Development Servers
Backend (Terminal 1):
cd backend npm run devFrontend (Terminal 2):
cd frontend npm run dev -
๐ Access the Application
Open your browser and navigate to
http://localhost:5173
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
POST /api/auth/register # User Registration
POST /api/auth/login # User Login
GET /api/auth/profile # Get User Profile
PUT /api/auth/profile # Update ProfileGET /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 CourseGET /api/progress/:userId # Get User Progress
POST /api/progress/complete # Mark Lesson Complete
GET /api/leaderboard # Global LeaderboardFor comprehensive API documentation with examples, visit our API Documentation
- ๐ 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
We welcome contributions from the community! Here's how you can help:
- Fork the Repository on GitHub
- Clone your Fork locally
- Create a Feature Branch:
git checkout -b feature/amazing-feature - Make your Changes with proper commit messages
- Test Thoroughly - ensure all tests pass
- Submit a Pull Request with detailed description
- ๐ 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
- ๐ 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
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.
- ๐ค 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
- ๐ 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


