https://github.com/saadbutt27/learning-management-system
An LMS for students and teachers interaction.
https://github.com/saadbutt27/learning-management-system
aws aws-s3 lucide-react next-auth nextjs postgresql reactjs rest-api tailwindcss typescript
Last synced: 2 months ago
JSON representation
An LMS for students and teachers interaction.
- Host: GitHub
- URL: https://github.com/saadbutt27/learning-management-system
- Owner: saadbutt27
- Created: 2025-01-26T08:46:42.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-18T22:13:02.000Z (over 1 year ago)
- Last Synced: 2025-02-18T23:23:14.786Z (over 1 year ago)
- Topics: aws, aws-s3, lucide-react, next-auth, nextjs, postgresql, reactjs, rest-api, tailwindcss, typescript
- Language: TypeScript
- Homepage: https://learning-management-system-beta.vercel.app/
- Size: 565 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# 📚 Learn&Grow LMS
A **full-fledged Learning Management System (LMS)** designed to facilitate **students, teachers, and administrators** in managing courses, assignments, quizzes, and attendance efficiently.
## 🚀 Overview
Learn&Grow is a modern, **role-based LMS** built using **Next.js, PostgreSQL, and AWS S3** to provide a seamless learning experience. It allows:
- **Admins** to create courses, manage students & teachers, and assign courses.
- **Teachers** to upload lectures, assignments, and quizzes, mark attendance, and grade submissions.
- **Students** to access course materials, submit assignments, attempt quizzes, and track attendance.
---
## 🛠️ Tech Stack
| **Technology** | **Usage** |
|----------------|-----------|
| **Next.js** | Frontend & Backend Framework |
| **React.js** | Component-based UI development |
| **TypeScript** | Strongly-typed JavaScript |
| **TailwindCSS** | Styling for UI |
| **ShadCN UI** | Modern UI components |
| **PostgreSQL** | Relational database (previously MySQL) |
| **AWS S3** | Cloud storage for files & images |
| **NextAuth & JWT** | Authentication & session management |
| **Middleware** | Role-based access control |
---
## 🎯 Features
### 🔹 **Admin Panel**
- ✅ Create & manage **courses**
- ✅ Register **students & teachers**
- ✅ Assign courses to teachers
- ✅ Enroll students in courses
### 🔹 **Teacher Dashboard**
- ✅ View assigned courses
- ✅ Upload **lectures, assignments, quizzes, announcements**
- ✅ **Mark attendance** and update records
- ✅ View and grade **assignment & quiz submissions**
- ✅ **MCQ-based quizzes** (auto-evaluated)
### 🔹 **Student Dashboard**
- ✅ Access enrolled courses
- ✅ **Download** lecture & assignment materials
- ✅ **Attempt quizzes** (timer-based auto-submit)
- ✅ View **attendance records** (present/absent status)
- ✅ **Submit assignments**
### 🔹 **Profile Management (Admin, Teacher, Student)**
- ✅ View and update **profile details**
- ✅ **Reset password**
- ✅ Upload & delete **profile pictures**
### 🔹 **File Storage with AWS S3**
- ✅ **Securely store** lecture materials, assignments, and submissions
- ✅ URLs stored in the database for easy access
---
## 🌍 Deployment
The LMS is live and deployed on **Vercel** for seamless access.
🔗 **Live Demo:** https://learning-management-system-beta.vercel.app
### 🔑 **Test Credentials**
- **Student Login:**
- **Username:** `st123`
- **Password:** `lmsst123`
- **Teacher Login:**
- **Username:** `tc123`
- **Password:** `lmstc123`
- **Admin Login:**
- **Username:** `admin`
- **Password:** `admin123`
---