A comprehensive Data Structures & Algorithms tracker that integrates with your LeetCode profile to provide AI-powered analytics, personalized recommendations, and intelligent insights for accelerated learning.
- Smart Weakness Detection: AI identifies your specific areas of struggle with confidence scores
- Adaptive Difficulty Suggestions: ML-powered recommendations for optimal learning progression
- Pattern Mastery Analysis: Deep analysis of algorithmic pattern understanding and growth
- Intelligent Problem Recommendations: AI-curated problems based on your weaknesses and goals
- Semantic Problem Matching: Vector-based similarity search for targeted practice
- Real-time Dashboard: Live statistics from your LeetCode profile
- Progress Analytics: Detailed charts and insights on your coding journey
- Problem Tracking: Monitor solved problems by difficulty and category
- Language Statistics: Track your programming language usage
- Submission Calendar: Visualize your coding consistency with GitHub-style heatmaps
- Contest Performance: Monitor your contest rankings and performance evolution
- User Authentication: Secure signup/signin with LeetCode ID verification
- Community Hub: Daily challenges, trending discussions, and community engagement
- Modern UI: Beautiful, responsive design with smooth animations and micro-interactions
- Smart Search: Advanced filtering and search capabilities across all features
- ML Framework: scikit-learn, pandas, numpy
- Vector Database: Chroma with sentence-transformers
- Embeddings: all-MiniLM-L6-v2 for semantic similarity
- ML Models: Random Forest, Gradient Boosting, K-Means clustering
- ML API: FastAPI with async support
- Frontend: Next.js, React, Tailwind CSS, Framer Motion
- Backend: Node.js, Express.js, SQLite
- Authentication: JWT tokens, bcrypt
- Charts: Recharts for interactive data visualizations
- LeetCode Integration: Custom API integration with 30+ endpoints
- UI Components: Headless UI, Heroicons
- Animations: Framer Motion for smooth transitions
- Styling: Tailwind CSS with custom component library
- Responsive: Mobile-first design approach
- Node.js (v16 or higher)
- Python (3.8 or higher) for ML service
- npm or yarn
- Docker (for running the LeetCode API)
- Git for cloning the repository
git clone <your-repo-url>
cd dsa-trackernpm installNavigate to the ML service directory and install Python dependencies:
cd ml-service
pip install -r requirements.txt
cd ..Create a .env file in the root directory:
JWT_SECRET=your-super-secret-jwt-key-change-this-in-production
PORT=5000
DB_PATH=./server/users.dbNavigate to the leetcodeapi directory and start the Docker container:
cd leetcodeapi
docker-compose up -d
cd ..This will start the LeetCode API on http://localhost:3000
In a new terminal, start the AI/ML microservice with real LeetCode data integration:
cd ml-service
chmod +x start_real_service.sh
./start_real_service.shThis will start the ML service on http://localhost:8001 and analyze real LeetCode data (no mock data!)
In another terminal, start the backend authentication server:
npm run serverThis will start the auth server on http://localhost:5000
In the final terminal, start the Next.js development server:
npm run devThe website will be available at http://localhost:3001
Your complete DSA Tracker platform now runs on 4 services:
| Service | Port | Purpose | Status Check |
|---|---|---|---|
| Website | 3001 | Main Next.js application | http://localhost:3001 |
| Auth Server | 5000 | Authentication & user management | http://localhost:5000 |
| LeetCode API | 3000 | LeetCode data integration | http://localhost:3000 |
| AI ML Service | 8001 | Real data AI analytics & recommendations | http://localhost:8001/health |
Once all services are running, you can access the AI-powered features:
- AI Analytics Dashboard: Visit
/ai-analyticsfor comprehensive ML insights - Smart Recommendations: Get personalized problem suggestions
- Weakness Detection: Identify areas for improvement with confidence scores
- Pattern Analysis: Deep dive into algorithmic pattern mastery
The ML service automatically:
- Downloads required models on first run
- Creates vector embeddings for problem similarity
- Trains models based on user data patterns
- Provides real-time analytics through the web interface
POST /api/auth/register- Register a new userPOST /api/auth/login- User loginGET /api/auth/verify- Verify JWT token
The website integrates with the LeetCode API running on port 3000. Available endpoints include:
/userProfile/:username- Get full profile details/:username/solved- Get solved problems count/:username/submission- Get recent submissions/:username/acSubmission- Get accepted submissions/languageStats?username=:username- Get language statistics/daily- Get daily challenge/problems- Get problem list
For complete API documentation, check the LeetCode API README.
- Registration: Sign up with your email and LeetCode username
- Login: Access your personalized dashboard
- Dashboard: View your coding statistics and progress
- Analytics: Explore detailed charts and insights
- Problems: Browse and track problem-solving progress
The website includes:
- Beautiful landing page with feature highlights
- Secure authentication with LeetCode ID verification
- Comprehensive dashboard with real-time statistics
- Interactive charts and analytics
- Responsive design for all devices
- Password hashing with bcrypt
- JWT token authentication
- Input validation and sanitization
- SQL injection protection
- CORS configuration
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the MIT License.
- LeetCode API not responding: Make sure Docker is running and the API container is up
- Authentication not working: Check if the auth server is running on port 5000
- Database errors: Ensure SQLite permissions are correct
- CORS issues: Verify the API endpoints are configured correctly
- Website:
http://localhost:3001 - Authentication Server:
http://localhost:5000 - LeetCode API:
http://localhost:3000
- Email verification and password reset
- Social login integration (Google, GitHub)
- Friends system and leaderboards
- Mobile app (React Native)
- Export data functionality
- Study plans and personalized learning paths
- Smart Weakness Detection โ
- Adaptive Difficulty Suggestions โ
- Pattern Mastery Analysis โ
- Intelligent Problem Recommendations โ
- Advanced Analytics Dashboard โ
- Predictive performance modeling
- Automated study schedule optimization
- Code review and improvement suggestions
- Interview preparation recommendations
If you encounter any issues or have questions, please:
- Check the troubleshooting section
- Look for existing issues in the repository
- Create a new issue with detailed information
Happy Coding! ๐