Skip to content

Latest commit

 

History

History
127 lines (99 loc) · 4.08 KB

README.md

File metadata and controls

127 lines (99 loc) · 4.08 KB

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

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 Next.js
  • Tailwind CSS Tailwind CSS
  • Shadcn UI Shadcn UI
  • React Video React Video
  • Prisma ORM Prisma
  • PostgreSQL PostgreSQL
  • Clerk Clerk
  • Razorpay Razorpay

Installation

To get a local copy up and running, follow these simple steps.

Prerequisites

  • Node.js
  • PostgreSQL

Clone the Repository

git clone https://github.com/DevKrishnasai/lms.git
cd lms

Install Dependencies

pnpm install

Setup Environment Variables

Create a .env file in the root directory and add the necessary environment variables.

Run Database Schema Push

pnpm dlx prisma db push

Run Schema Types Generation

pnpm dlx prisma generate

Start the Application

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