A free and open-source Learning Management System designed to help learners master Java and Data Structures & Algorithms.
Live Demo | Documentation | Contributing
- Structured Learning: Comprehensive courses from basics to advanced levels.
- Code Playground: Practice coding with real-time execution in 45+ languages.
- Progress Tracking: Bookmark lessons and add personal notes to track your journey.
- Secure Authentication: JWT-based user authentication for secure access.
- Responsive Design: Optimized for all devices.
- Fast & Modern: Built with Vite and React for a seamless experience.
- Open Source: Licensed under MIT.
- React 18
- Vite
- React Router
- Monaco Editor
- React Markdown
- Axios
- React Hot Toast
- Node.js
- Express.js
- JWT (jsonwebtoken)
- bcryptjs
- Piston API (Code Execution)
- Supabase (PostgreSQL Database)
- Node.js >= 16.0.0
- npm or yarn
-
Clone the Repository
git clone https://github.com/parthamk/JavaDSA-LMS.git cd JavaDSA-LMS -
Backend Setup
cd backend npm install cp .env.example .env npm run dev -
Frontend Setup (in a new terminal)
cd frontend npm install cp .env.example .env npm run dev
Visit http://localhost:5173 in your browser.
For detailed setup instructions, see SETUP.md.
- Register: Create a new account.
- Choose a Course: Select Java or DSA.
- Start Learning: Follow structured lessons.
- Practice: Use the code playground to hone your skills.
- Track Progress: Bookmark lessons and monitor your learning journey.
- Java Fundamentals (Basic Level)
- Object-Oriented Programming (Intermediate Level)
- Advanced Java Concepts
- Design Patterns & Best Practices
- Interview Preparation Guide
- Programming Fundamentals
- Introduction to Data Structures
- Algorithmic Complexity
- Basic Data Structures
- Sorting & Searching Algorithms
- Tree & Graph Data Structures
- Advanced Data Structures
- Problem-Solving Techniques
Contributions are welcome! Please read CONTRIBUTING.md for details.
- Fork the repository.
- Create a feature branch (
git checkout -b feature/AmazingFeature). - Commit your changes (
git commit -m 'Add AmazingFeature'). - Push to the branch (
git push origin feature/AmazingFeature). - Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for details.
- Monaco Editor by Microsoft
- Piston API for code execution
- All contributors and learners
- GitHub: parthamk/JavaDSA-LMS
Made with ❤️ for learners worldwide.