Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

MERN E-Learning Platform

Learnera is a modern e-learning platform built with the MERN stack (MongoDB, Express.js, React, Node.js). It offers a seamless, interactive, and AI-powered learning experience for students and instructors.

Features

  • User Authentication: Secure signup, login, email verification, and password reset.
  • Course Management: Browse, purchase, and enroll in courses. Admins can add, edit, and manage courses and lectures.
  • Video Lectures: Stream course lectures with progress tracking.
  • AI Doubt Resolver: Integrated AI chatbot (Google Gemini) to answer student questions instantly.
  • Payment Integration: Secure PayPal payments with downloadable PDF receipts.
  • User Dashboard: Track enrolled courses, progress, and manage profile.
  • Admin Dashboard: Manage users, courses, and view platform statistics.
  • Responsive UI: Modern, mobile-friendly interface built with React, Tailwind CSS, and Framer Motion.

Tech Stack

  • Frontend: React, Vite, Tailwind CSS, Framer Motion, React Router, Axios
  • Backend: Node.js, Express.js, MongoDB, Mongoose
  • AI Integration: Google Gemini API
  • Payments: PayPal REST SDK

Getting Started

Prerequisites

  • Node.js (v18+ recommended)
  • MongoDB instance (local or cloud)
  • PayPal developer account (for sandbox credentials)
  • Google Gemini API key

Installation

  1. Clone the repository:
    git clone https://github.com/ab00s1/MERN_E-learning_Platform.git
    cd MERN_E-learning_Platform 
  2. Install dependencies:
    • For client:
      cd client
      npm install
    • For server:
      cd ../server
      npm install
  3. Configure environment variables:
    • Create a .env file in the server directory with the following:
      PORT=5000
      MONGO_URI=<your-mongodb-uri>
      PAYPAL_MODE=sandbox
      PAYPAL_CLIENT_ID=<your-paypal-client-id>
      PAYPAL_SECRET=<your-paypal-secret>
      GEMINI_API_KEY=<your-gemini-api-key>
      
  4. Run the application:
    • Start the backend:
      npm run dev
    • Start the frontend (in a new terminal):
      cd ../client
      npm run dev
    • The frontend will be available at http://localhost:5173 (default Vite port).

Folder Structure

E-Learning Platform/
├── client/   # React frontend
├── server/   # Node.js backend
└── README.md

Demo

Watch Demo Video

About

Learnera is an e-learning platform developed using the MERN tech stack. It aims to address the limitations of traditional online learning platforms and features an integrated AI-powered doubt resolver.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages