- 🤖 Introduction
- ⚙️ Tech Stack
- 🔋 Features
- 🤸 Quick Start
- 🕸️ Snippets (Code to Copy)
- 🔗 Assets
An enterprise-grade, full-stack Learning Management Application built using modern web technologies and AWS services. This application streamlines learning experiences for both instructors and students through robust features and seamless functionality.
If you're getting started and need assistance or face any bugs, join our active Discord community. It's a place where people help each other out.
Frontend
Backend
- Local DynamoDB 🗄
- NoSQL Workbench 🛠
- Postman 🌐
- Dynamoose ⚡
- AWS Free Tier 💸
- AWS S3 📦
- AWS CloudFront 🌍
- AWS ECR 🐳
- Docker 🏗
👉 User Authentication with Clerk: Securely implement signup, login, and logout functionality with role-based access control for instructors and students.
👉Course Management: Instructors can effortlessly create, update, and manage courses, including video lectures, documents, and resources.
👉 Real-Time Progress Tracking: Students can track their course progress in real-time, with lessons automatically marked as complete when 80% of the video is played.
👉 Notifications: Stay updated with real-time email and in-app notifications for course deadlines, announcements, and updates.
👉 Secure Payments: Easily purchase and subscribe to courses through secure integration with Stripe.
👉 Insights and Metrics: Admins and instructors can access detailed performance and engagement metrics for students and courses.
👉 File Management for Learning: Upload, view, manage, and share supplementary course files securely with dynamic dashboards.
👉 Dynamic Dashboards: Personalized dashboards for instructors and students, showcasing key data points like progress, metrics, and recent activities.
👉 Modern Responsive Design: A clean, minimalist UI with responsive design ensures usability and a seamless experience across all devices.
👉 Global Search and Sorting Options: Find content quickly and organize course files or data efficiently by name, date, or type.
and many more, including the latest React 19, Next.js 15 and AWS features alongside code architecture and reusability
Follow these steps to set up the project locally on your machine.
Prerequisites
Make sure you have the following installed on your machine:
Cloning the Repository
git clone https://github.com/Developer-RONNIE/lmsPortal
cd lmsPortal
Installation
Install the project dependencies using npm:
npm install
Set Up Environment Variables
Create a new file named .env.local
in the root of your project and add the following content:
Replace the values with your actual Appwrite credentials. You can obtain these credentials
Running the Project
npm run dev
Open http://localhost:3000 in your browser to view the project.
- Assets used in the project can be found here