A full-stack Learning Management System (LMS) Platform built with Next.js, React, Stripe, Mux, Prisma, Tailwind, MySQL.
Here's a glimpse of the Website, highlighting its features and aesthetics.
Main view of the Website
This project showcases the following features:
- Browse & Filter Courses
- Purchase Courses using Stripe
- Mark Chapters as Completed or Uncompleted
- Progress Calculation of each Course
- Student Dashboard
- Teacher mode
- Create new Courses
- Create new Chapters
- Easily reorder chapter position with drag nโ drop
- Upload thumbnails, attachments and videos using UploadThing
- Video processing using Mux
- HLS Video player using Mux
- Rich text editor for chapter description
- Authentication using Clerk
- ORM using Prisma
- MySQL database using Aiven
The project is built using the following technologies and libraries:
- Next.js
- React
- Stripe
- Mux
- Prisma
- Tailwind
- MySQL
Follow the steps below to set up and run this project on your local environment:
Follow the steps below to set up and run this project on your local environment;
npm install
#or
yarn install
Once the dependencies are installed, you can run the project using
npm run dev
#or
yarn dev
The application will start and by default can be accessed at http://localhost:3000.
Contributions to this project are always welcome. Here's how you can help enhance its features or make improvements:
Start by forking the project repository, then clone your fork using:
git clone https://github.com/EthanCh30/LMS_Platform.git
It's recommended to create a new branch for each feature or fix:
git checkout -b name-of-your-new-branch
Implement your desired modifications or additions to the code.
Once done, save your changes:
git commit -m"Provide a brief description of your changes here"
Push your updates to your branch:
git push origin name-of-your-new-branch
Navigate to the original project repository on GitHub and submit a pull request, Ensure you give a detailed explanation of the changes you've made.
Your contribution will be reviewed, and if it meets the project's standards and objectives, it'll be merged. Thanks in advance for your effort and input!
If you have questions or wish to discuss the project further, don't hesitate to reach out:
- Email: [email protected]
I'm always open to feedback, collaboration, or general inquiries. Looking forward to hearing from you!