Overview
This project is a Learning Management System (LMS) designed to provide a centralized platform for delivering courses, assessments, certifications, and progress tracking. It supports three user roles—Admin, Instructor, and Student—each with specific responsibilities to manage educational content, classes, evaluations, and certifications.
Project Structure
The project is divided into a frontend (client/) and a backend (server/). This README focuses on the frontend structure located in client/.
Frontend Structure (client/)
The frontend is built using React.js with Vite as the build tool and Tailwind CSS for styling. The code is organized under client/src/ to handle the LMS's user roles and shared resources.
Directory Breakdown
- components: - UI components specific to Admin and others if need
- pages: - Pages for Admin functionalities.
- routes: - Routing logic
- components: - UI components specific to Instructor and others if need
- pages: - Pages for Instructor functionalities.
- routes: - Routing logic
- components/: Reusable UI components specific to Student
- pages: - Pages for Student functionalities.
- routes: - Routing logic
- assets: - Images should store here.
- components: - UI components used across roles - like Navbar.jsx, Footer.jsx.
- pages: - Role-agnostic pages - like , Login.jsx, Register.jsx, ForgotPassword.jsx.
- routes: - Top-level routing logic to handle role-based redirects - like, AppRoutes.jsx.
- services: - logic and API calls - like authService.js, courseService.js. App.css App.jsx index.css main.jsx
=====