A personal, web-based tracker designed to help developers organize and visualize their journey through the NeetCode 150 problem set. This application gamifies the preparation process with a points system and provides detailed statistics on your progress.
Live Demo: https://personaldsatracker.netlify.app/
- NeetCode 150 Integration: Pre-loaded with the complete list of 150 curated DSA problems.
- Progress Tracking: Mark problems as "Completed" to update your stats instantly.
- Gamification (Glory Points): Earn points for every problem solved to keep motivation high.
- Local Storage Support: All data is saved directly in your browserβno login or database required.
- Smart Filtering & Search:
- Search by problem title.
- Filter by Topic (Arrays, Trees, DP, etc.).
- Filter by Difficulty (Easy, Medium, Hard).
- Filter by Status (Completed/Not Completed).
- Statistics Dashboard: Visual breakdown of your progress by total count, difficulty, and specific topics.
- Data Management: Functionality to Import, Export, and Reset your progress (useful for backing up data or moving between devices).
- Frontend: HTML5, CSS3, JavaScript (Vanilla)
- Data Handling: JSON (Local Data), Browser LocalStorage API
- Deployment: Netlify
DSAProgresstracker/
βββ data/ # Contains the problem dataset (JSON/JS)
βββ app.js # Main application logic (DOM manipulation, LocalStorage, Filtering)
βββ index.html # Main HTML structure
βββ styles.css # Styling and layout
βββ README.md # Project documentation
To run this project locally on your machine, follow these steps:
You only need a modern web browser (Chrome, Firefox, Edge, etc.) to run this application.
- Clone the repository:
git clone [https://github.com/shubhd556/DSAProgresstracker.git](https://github.com/shubhd556/DSAProgresstracker.git)
- Navigate to the project directory:
cd DSAProgresstracker
- Launch the App:
Simply open the
index.htmlfile in your web browser.
- Select a Topic: Use the dropdowns to filter for specific topics (e.g., "Two Pointers").
- Solve a Problem: Click the problem link to visit LeetCode.
- Mark as Done: Check the box next to the problem name. Your "Glory Points" and progress bars will update automatically.
- Save/Move Data: Use the Export button to download a
.jsonfile of your progress. Use Import to upload that file on a different device.
Contributions are welcome! If you have suggestions for new features (like adding the Blind 75 list or dark mode), feel free to fork the repo and submit a pull request.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License.
Made with β€οΈ by Shubham