The Ultimate Open-Source Learning Management System for Modern Coding Education.
Empowering the next generation of developers through interactive, browser-based learning.
Features β’ Tech Stack β’ Installation β’ Documentation
ProCode EduPulse is a state-of-the-art Single Page Application (SPA) built with Vanilla JavaScript. It was designed to provide a lightweight, yet powerful environment where students can learn, practice, and build as they go.
Tip
Zero Build Tools: We believe in the power of the web. This app works directly in the browser with no build steps, high performance, and zero configuration.
| Feature | Description |
|---|---|
| Embedded IDE | Multi-language editor powered by CodeMirror 6 with live preview. |
| AI Mentorship | Get smart hints and step-by-step guidance via Google Gemini. |
| Gamified Progress | Earn XP, unlock badges, and climb the leaderboard as you learn. |
| Project Portfolio | Every challenge you complete is automatically added to your dev portfolio. |
| Feature | Description |
|---|---|
| Unified CMS | A powerful dashboard to create courses, lessons, and challenges. |
| Advanced Search | Instantly find and manage content with Ctrl + K global search. |
| Content Analytics | Track completion rates and student performance metrics. |
| No-Code Management | Publish rich markdown content and video lessons with zero technical overhead. |
The platform follows a modular service-based architecture, ensuring high scalability and maintainability without the need for complex frameworks.
graph TD
A[Router (Hash-based)] --> B(Page Renderers)
B --> C{Component Library}
C --> D[CodeEditor (CodeMirror 6)]
C --> E[VideoPlayer (Custom HTML5)]
C --> F[QuizEngine]
B --> G[Services Layer]
G --> H[Firebase Auth/Firestore]
G --> I[Piston API (Remote Exec)]
G --> J[Gemini API (AI Insights)]
# Clone the repository
git clone https://github.com/soghayarmahmoud/procode-edu-pulse-lms.git
# Navigate and serve
cd procode-edu-pulse-lms
npx serve .To unlock the full potential of the platform:
- Firebase: Set up your project and add credentials in
js/services/firebase-config.js. - Gemini AI: Add your API key in the User Settings panel within the app.
- Remote Execution: Configure the Piston API endpoint for backend code validation.
| Folder / File | Purpose |
|---|---|
js/ |
Core Logic: ES modules for routing, components, and services. |
css/ |
Design System: Variables, global styles, and modular component CSS. |
data/ |
Content fallback: JSON files for course/lesson metadata. |
.github/ |
CI/CD: Workflows for automated linting and formatting. |
We love contributions! Whether you're fixing a bug, adding a new course, or improving the UI, your help makes ProCode EduPulse better for everyone.
- Check out our Contributing Guidelines.
- Follow the Code of Conduct.
- Join the discussion on our Issues page.
If you love this project, please consider giving it a star on GitHub!
Built with π by Mahmoud ElSoghayar & Mahmoud Abdelrauf