Skip to content

Latest commit

 

History

History
90 lines (73 loc) · 3.36 KB

File metadata and controls

90 lines (73 loc) · 3.36 KB

📚 Learning Management System (LMS) Project Documentation

Screenshot 2025-02-08 112741

🌐 Project Overview

This Learning Management System (LMS) is a web application designed to streamline the management of online learning activities. It provides users with features like course enrollment, progress tracking, and course content management, making education more accessible and efficient.

✨ Key Features

  • 🔒 User Authentication: Secure login and sign-up.
  • 🔑 Role-Based Access Control: Separate functionalities for Admin, Instructor, and Student roles.
  • 📋 Course Management: Create, update, delete, and view courses.
  • 📊 User Dashboard: Track progress and performance.
  • 📝 Assignment System: Upload and grading functionalities.
  • 🔔 Notifications: Stay updated with important alerts.

🛠️ Technology Stack

🌐 Frontend:

  • Framework: React.js
  • Styling: Tailwind CSS
  • State Management: Redux Toolkit
  • Routing: React Router

⚙️ Backend:

  • Framework: Node.js with Express.js
  • Database: MongoDB with Mongoose ORM
  • Authentication: JSON Web Tokens (JWT)

📂 Additional Tools:

  • Version Control: Git and GitHub
  • Project Management: Trello/Asana

📋 Prerequisites

  • Node.js and npm installed
  • MongoDB set up and running
  • Basic knowledge of JavaScript and React

⚡ Setup Instructions

  1. 📥 Clone the repository from GitHub.
  2. Navigate to the project directory and install dependencies:
    npm install
  3. 🛠️ Configure environment variables in a .env file:
    MONGO_URI=your_mongo_connection_string
    JWT_SECRET=your_secret_key
  4. 🚀 Start the development server:
    npm run dev
  5. 🌐 Access the application at http://localhost:3000.

🧪 Testing

  • 🛡️ Run unit tests for backend APIs using Jest:
    npm test
  • 🖥️ Perform manual testing through Postman or the frontend interface.

🌍 Deployment

  • 🌟 Frontend hosted on Vercel
  • ☁️ Backend hosted on Vercel
  • 💾 Database hosted on MongoDB Atlas.

👥 Roles and Responsibilities

  • 🛡️ Admin: Manage users and courses, view analytics.
  • 👩‍🏫 Instructor: Create and manage courses, grade assignments.
  • 👨‍🎓 Student: Enroll in courses, complete assignments, and track progress.

🤔 Challenges Faced

  • 🔐 Implementing secure role-based access control.
  • 📱 Ensuring responsive design across devices.
  • ⚡ Optimizing backend for scalability and performance.

Some Screenshots This Rabbit.io Project

  • 📈 Admin DashBoard

  • image
  • 🗃️ Create Courses

  • image
  • ⚙️ Edit Courses

  • Screenshot 2025-02-08 113829
  • 📹 Create Lectures

  • Screenshot 2025-02-08 113909
  • 🎞️ Edit Lectures

  • Screenshot 2025-02-08 113919