https://github.com/DevKrishnasai/lms
Comprehensive Learning Management System (LMS) built with Next.js, Tailwind CSS, Shadcn UI, Magic UI, React Video, Prisma ORM, PostgreSQL, and Clerk.
https://github.com/DevKrishnasai/lms
clerkauth education lms lmsportal magic-ui nextjs14 portal postgresql prisma-orm reactvideo shadcn-ui tailwindcss typescript uploadthing
Last synced: about 1 month ago
JSON representation
Comprehensive Learning Management System (LMS) built with Next.js, Tailwind CSS, Shadcn UI, Magic UI, React Video, Prisma ORM, PostgreSQL, and Clerk.
- Host: GitHub
- URL: https://github.com/DevKrishnasai/lms
- Owner: DevKrishnasai
- Created: 2024-06-29T18:13:22.000Z (over 1 year ago)
- Default Branch: v3
- Last Pushed: 2024-07-25T07:56:17.000Z (about 1 year ago)
- Last Synced: 2024-07-26T01:40:26.312Z (about 1 year ago)
- Topics: clerkauth, education, lms, lmsportal, magic-ui, nextjs14, portal, postgresql, prisma-orm, reactvideo, shadcn-ui, tailwindcss, typescript, uploadthing
- Language: TypeScript
- Homepage: https://lms.krishnasai.top/
- Size: 2.09 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-shadcnui - Github
README
# YourLMS - Advanced Learning Management System
Welcome to YourLMS! This repository contains the code for a comprehensive Learning Management System built with Next.js, Tailwind CSS, Shadcn UI, React Video, Prisma ORM, PostgreSQL, and Clerk.
## Table of Contents
- [Introduction](#introduction)
- [Features](#features)
- [Tech Stack](#tech-stack)
- [Installation](#installation)
- [Usage](#usage)
- [Project Structure](#project-structure)## Introduction
YourLMS is designed to provide a seamless learning experience for both teachers and students. The platform offers a range of features to facilitate course creation, enrollment, and completion.
## Features
### User Roles
- Choose between student and teacher roles during signup
- Teachers can create courses, publish content, issue certifications, and earn from course sales
- Students can enroll in courses (free or paid) and complete them and get certificates### Course Management
- Teachers can access Course Studio to customize course structure
- Options to make courses free or paid
- Publish chapters with videos, attachments, and explanations in Markdown format### Payment Integration
- Razorpay integration for secure course payments### Search Functionality
- Search courses by teacher name, title, or category (e.g., web development, mobile development)### Email Automation
- Welcome email upon signup
- Course enrollment confirmation email
- Course completion email with certificate download link
- Course update notifications for enrolled students### User Profiles
- Shareable profiles showcasing enrolled courses, certifications, goals, and interests
- Customizable user settings### Certifications
- Teachers can upload signatures for course certificates
- Certificates include teacher and portal owner signatures### UI/UX
- Clean user interface with black and white theme
- Toast notifications for user feedback
- Skeleton states for improved loading experience### Navigation
- Dashboard for quick overview
- Course Studio for teachers
- Certificates section
- Profile management
- Settings page### Additional Features
- Beautiful landing page
- Onboarding form for user interests and goals## Tech Stack
- **Next.js** 
- **Tailwind CSS** 
- **Shadcn UI** 
- **React Video** 
- **Prisma ORM** 
- **PostgreSQL** 
- **Clerk** 
- **Razorpay** ## Installation
To get a local copy up and running, follow these simple steps.
### Prerequisites
- Node.js
- PostgreSQL### Clone the Repository
```sh
git clone https://github.com/DevKrishnasai/lms.git
cd lms
```### Install Dependencies
```sh
pnpm install
```### Setup Environment Variables
Create a `.env` file in the root directory and add the necessary environment variables.### Run Database Schema Push
```sh
pnpm dlx prisma db push
```### Run Schema Types Generation
```sh
pnpm dlx prisma generate
```### Start the Application
```sh
pnpm dev
```## Usage
To start using the application, navigate to `http://localhost:3000` in your browser.## Project Structure
```
YourLMS/
├── prisma/ # Prisma schema and migrations
├── public/ # Public assets
├── src/
│ ├── components/ # Reusable components
│ ├── app/ # Pages and API routes
│ ├── utils/ # Utility functions
│ └── ... # Other directories and files
└── README.md # Project documentation
```