An open API service indexing awesome lists of open source software.

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.

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`

---