https://github.com/prathicashettym/codeacad
ReactJS frontend of the Full Stack Learning Management System
https://github.com/prathicashettym/codeacad
cloudinary-api daisyui express-js mongodb nodejs razorpay-api reactjs tailwindcss
Last synced: 5 months ago
JSON representation
ReactJS frontend of the Full Stack Learning Management System
- Host: GitHub
- URL: https://github.com/prathicashettym/codeacad
- Owner: PrathicaShettyM
- Created: 2023-12-26T12:15:53.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-07-18T04:17:56.000Z (6 months ago)
- Last Synced: 2025-07-18T08:04:42.382Z (6 months ago)
- Topics: cloudinary-api, daisyui, express-js, mongodb, nodejs, razorpay-api, reactjs, tailwindcss
- Language: JavaScript
- Homepage:
- Size: 2.51 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 📘 CodeAcad LMS — Full Stack Learning Management System
CodeAcad is a robust and feature-rich Learning Management System built with the MERN stack. Designed for both learners and administrators, it supports real-time course management, secure lecture delivery, payment integration, and an intuitive user experience.
---
## 🚀 Tech Stack & Tools
### 🖥️ Frontend




### 🧠 Backend



### 🧰 Dev Tools & Libraries





---
## 📂 Folder Structure
```
codeacad-lms/
├── client/ # React frontend with Redux Toolkit
│ ├── pages/
│ ├── components/
│ ├── redux/
│ └── App.jsx
├── server/ # Node.js + Express backend
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── middleware/
│ ├── utils/
│ └── server.js
├── .env # Environment variables
└── README.md
```
---
## 🔐 Core Features
### 👩🎓 User Functionality
* ✅ Secure registration & login (JWT-based)
* 🏫 Explore courses (filterable by category)
* 📜 View course description & lectures
* 🎬 Watch course videos
* 💳 Subscribe via Razorpay
* 📂 Manage profile & enrolled courses
* 🔐 Change password
### 🛠️ Admin Functionality
* 🧑🏫 Add/update/delete courses
* 🎞️ Add/delete lectures to existing courses
* 📊 Dashboard with real-time charts
* 👥 View/manage all users
* 🔄 Role-based access control (ADMIN/USER)
* 💸 Track payments and subscription status
---
## 📦 Installation & Setup
### 1. Clone the Repository
```bash
git clone https://github.com/PrathicaShettyM/CodeAcad.git
cd lms-frontend
cd lms-backend
```
### 2. Backend Setup
```bash
cd server
npm install
```
Create a `.env` file with:
```env
PORT=5000
MONGO_URI=your_mongodb_uri
JWT_SECRET=your_jwt_secret
CLOUDINARY_CLOUD_NAME=your_cloud_name
CLOUDINARY_API_KEY=your_key
CLOUDINARY_API_SECRET=your_secret
RAZORPAY_KEY_ID=your_key
RAZORPAY_KEY_SECRET=your_secret
```
Run server:
```bash
npm run dev
```
### 3. Frontend Setup
```bash
cd ../client
npm install
npm run dev
```
---
## 📸 UI Screenshots (Add your own screenshots)
* 🏠 Home Page
* 📘 Course Details
* 🛠️ Admin Dashboard
* 💳 Razorpay Checkout
---
## 📡 API Endpoints
### 🔐 Auth Routes
* `POST /api/v1/auth/register` → Register new user
* `POST /api/v1/auth/login` → Login with role check
### 🎓 Course Routes
* `GET /api/v1/courses` → List all courses
* `GET /api/v1/courses/:id` → Course details
* `POST /api/v1/courses/create` → (Admin) Create course
* `PUT /api/v1/courses/:id` → Update course
* `DELETE /api/v1/courses/:id` → Delete course
### 📺 Lecture Routes
* `POST /api/v1/lectures/add/:courseId` → Add lecture to course
* `DELETE /api/v1/lectures/:courseId/:lectureId` → Delete lecture
### 💳 Payment Routes
* `POST /api/v1/payments/checkout` → Start subscription
* `POST /api/v1/payments/verify` → Verify payment
* `GET /api/v1/payments/stats` → Get revenue stats
---
## 🙋♀️ About Me
**Prathica Shetty M**
---
## 📃 License
This project is licensed under the **MIT License**.