A structured learning platform for mastering web development through guided paths and hands-on problem solving.
- JavaScript
- HTML
- CSS
- Node.js
- Express
- NestJs
- React
- 📚 Structured learning paths for multiple technologies
- 💻 Hands-on coding problems
- 📊 Progress tracking
- 🎯 Difficulty-based problems
- 💡 Hints and solutions
- ✅ Mark problems as solved/unsolved
-
Installation:
git clone https://github.com/your-repo/codehub.git cd codehub npm install npm start -
Access: Open
http://localhost:3000in your browser
Create a solutions directory in your local workspace with the following structure:
solutions/
├── javascript/
│ ├── problem-1/
│ │ ├── solution.js
│ │ └── README.md
│ └── problem-2/
│ ├── solution.js
│ └── README.md
├── react/
│ ├── problem-1/
│ │ ├── solution.jsx
│ │ ├── components/
│ │ └── README.md
│ └── problem-2/
│ ├── solution.jsx
│ └── README.md
└── node/
└── problem-1/
├── solution.js
└── README.md
-
Problem Directory:
- Name format:
problem-{id}(matches the problem ID shown in the app) - Example:
problem-1,problem-2
- Name format:
-
Solution Files:
- Main solution file (e.g.,
solution.js,solution.jsx) - Supporting files (if needed)
README.mdwith:- Problem description
- Your approach
- Time/Space complexity
- Learning points
- Main solution file (e.g.,
-
Technology-Specific Organization:
- React problems: Include component files
- Node.js problems: Include necessary modules
- Full-stack problems: Separate frontend/backend directories
Example Problem Solution README:
# Problem 1: Component State Management
## Problem Description
Implement a counter component with increment/decrement functionality...
## Approach
Used useState hook for state management...
## Solution Overview
- Created Counter component
- Implemented increment/decrement functions
- Added error handling for limits
## Learning Points
- Better understanding of React state
- Learned about component lifecycle
- Practiced error boundary implementationThe platform organizes content by:
- Technology (React, Node.js, etc.)
- Topics (Fundamentals, Advanced, etc.)
- Problems (Categorized by difficulty)
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is licensed under the MIT License.
Happy Coding! 🚀