Skip to content

smRid/Learning-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

110 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎓 ShikhoHub – Modern Learning Management System

ShikhoHub is a comprehensive Learning Management System built on the MERN stack (MongoDB, Express.js, React.js, Node.js). It offers a seamless experience for students to browse courses, while providing administrators with powerful tools for course management and user oversight.


🖼️ Preview

LMS Dashboard Preview


🔗 Live Demo : ShikhoHub


🌟 Features

  • 📚 Course Management – Create, update, and delete courses with ease.
  • Ratings & Reviews – Users can rate and review courses they have taken.
  • 📅 Booking System – Streamlined booking flow for users to enroll in courses.
  • 💳 Multi-Payment Gateway – Integrated Stripe and bKash payment gateways for flexible, secure transactions.
  • 🔐 Authentication – Secure user and admin authentication via Clerk.
  • 🖼️ Media Management – Cloudinary integration for handling course image uploads.
  • 🛠️ Admin Dashboard – Dedicated admin interface for managing the platform.

💳 Payment Gateway Integration

ShikhoHub supports multiple payment gateways using a Strategy Pattern for extensibility:

Stripe Payment

  • Type: Card-based payments (Visa, Mastercard, etc.)
  • Flow: Modal-based checkout using Stripe Elements
  • Region: Global support

bKash Payment

  • Type: Mobile Financial Services (MFS)
  • Flow: Redirect-based payment with callback handling
  • Region: Bangladesh
  • Features:
    • Tokenized payment creation
    • Automatic callback verification
    • Grant token management

💡 Note: Users can select their preferred payment method during checkout.


🛠️ Tech Stack

🧑‍💻 Frontend (Client)

⚙️ Backend (Server)

  • Express.js – Node.js web application framework
  • MongoDB – NoSQL database (via Mongoose)
  • Clerk Express – Clerk middleware for Express
  • Multer – Middleware for handling file uploads
  • Cloudinary – Media storage and optimization
  • Stripe – International card payment processing
  • bKash Payment Gateway – Bangladesh mobile payment integration
  • Dotenv – Environment variable management
  • Cors – Cross-origin resource sharing middleware

🛡️ Admin Panel


📁 Project Structure

LMS-MERN/
│
├── frontend/               # Frontend (React + Vite)
│   ├── src/
│   │   ├── components/     # Reusable UI components
│   │   └── pages/          # Main application pages
│   └── package.json
│
├── backend/                # Backend (Node + Express)
│   ├── routes/             # API routes (bookings, courses)
│   ├── controllers/        # Business logic
│   └── server.js           # Entry point
│
├── admin/                  # Admin Dashboard (React + Vite)
│   ├── src/
│   └── package.json
│
└── README.md               # Project documentation

📄 License

This project is licensed under the MIT License.

Releases

No releases published

Packages

 
 
 

Contributors