Skill‑Grow is a full‑stack Learning Management System designed to enable educators to create, manage and monetize online courses, and to allow learners to enroll, study at their own pace and monitor their progress.
- Course Catalog & Discovery Browse an organized catalog of courses offered by various instructors.
- Detailed Course Previews View comprehensive video, estimated duration, student ratings and free lesson samples.
- Secure Purchase Workflow Complete course purchases seamlessly via Stripe integration.
- Personal Learning Dashboard Access all enrolled courses, track progress and resume exactly where you left off.
- Course Reviews Submit ratings and feedback upon course completion to guide future learners.
- Dedicated Instructor Dashboard Obtain real‑time insights into course performance, revenue metrics and enrollment figures.
- Course Creation & Publishing Structure content into modules and lessons, then publish with a single click.
- Student Management Review enrollment lists and engagement statistics for each course.
-
Frontend • React.js for dynamic, component‑based user interfaces • React Router for client‑side routing • Axios for HTTP requests • Tailwind CSS for utility‑first styling
-
Backend • Node.js & Express.js to serve a scalable RESTful API
-
Database • MongoDB with Mongoose ODM for flexible, document‑oriented data modeling
-
Third‑Party Integrations • Clerk for authentication, user management and role‑based access control • Stripe for payment processing and webhook management • Cloudinary for image storage and optimized CDN delivery • CORS middleware for secure cross‑origin requests
This platform is a project I wanted to carry out in order to assess my progress in learning MERN fullstack application development, and was developed in my spare time. Core functionality is operational, though the project remains under active development.
Contributions Are Welcome Whether you’re fixing bugs, adding features or enhancing existing modules, your input drives our progress. To contribute:
-
Fork the repository
-
Create a feature branch:
git checkout -b feature/YourFeatureName
-
Commit your changes:
git commit -m "Add YourFeatureName" -
Push to your branch:
git push origin feature/YourFeatureName
-
Open a pull request for review.
-
Quiz & Assessment Module Enable instructors to design end‑of‑chapter quizzes for knowledge checks.
-
Automated Certification Issue completion certificates automatically when learners achieve 100% progress.
-
Direct Messaging System Facilitate one‑to‑one communication between learners and instructors.
-
Course‑Level Discussion Forums Provide community spaces for peer‑to‑peer collaboration and Q&A.
-
Administrator Control Panel Introduce a super‑admin role for comprehensive platform management (users, courses, transactions).
-
Notification Engine Deliver proactive alerts about new courses, responses and milestone achievements.
-
Internationalization (i18n) Localize the user interface to support multiple languages.
