CodeCase is a comprehensive platform designed to help competitive programmers track their progress, manage resources, and stay updated with upcoming contests across multiple coding platforms.
- Contest Calendar: Track upcoming contests from LeetCode, CodeChef, and Codeforces with IST timezone support
- Problem Management: Save, categorize, and filter coding problems by platform and difficulty
- Notes System: Create and organize programming notes, algorithms, and code snippets
- User Statistics: Track your problem-solving progress across multiple platforms
- CP Helper: Get AI-powered assistance for competitive programming concepts
- Platform Integration: Connect your LeetCode, CodeChef, and Codeforces accounts
- Visualization: View your progress with interactive charts and statistics
- PHP 7.4 or higher
- MySQL/MariaDB
- XAMPP/WAMP/LAMP stack
- Web browser with JavaScript enabled
-
Clone the repository:
git clone https://github.com/OmikAcharya/codeKeep.git -
Move the project to your web server directory (e.g.,
htdocsfor XAMPP):mv codeKeep /path/to/xampp/htdocs/ -
Start your Apache and MySQL services through XAMPP/WAMP/LAMP control panel
-
Create a database named
codekeepin your MySQL server -
Import the database schema:
- Navigate to
http://localhost/phpmyadmin - Create a new database named
codekeep - Run the
setup_db.phpscript by visitinghttp://localhost/codeKeep/setup_db.phpin your browser
- Navigate to
-
Access the application:
http://localhost/codeKeep/
codeKeep/
├── api/ # API endpoints for platform integrations
│ ├── functions.php # Helper functions for API calls
│ ├── get_user_stats.php # User statistics API
│ └── ...
├── assets/ # Static assets (images, icons)
├── css/ # CSS stylesheets
├── js/ # JavaScript files
├── config.php # Database configuration
├── dashboard.php # Main dashboard
├── contests.php # Contest tracking page
├── problems.php # Problem management page
├── notes.php # Notes management page
├── cp_helper.php # CP Helper feature
├── index.php # Landing page
├── login.php # User login
├── signup.php # User registration
└── setup_db.php # Database setup script
CodeCase integrates with the following APIs:
-
Contest Information:
https://competeapi.vercel.app/contests/upcoming/- For CodeChef and Codeforces contestshttps://competeapi.vercel.app/contests/leetcode/- For LeetCode contests
-
User Statistics:
- LeetCode:
https://competeapi.vercel.app/user/leetcode/<username>/ - CodeChef:
https://competeapi.vercel.app/user/codechef/<username>/ - Codeforces:
https://competeapi.vercel.app/user/codeforces/<username>/
- LeetCode:
The application uses the following main tables:
users- User account informationprofile- User profile data including platform usernamesproblems- Coding problems informationbookmarks- User bookmarked problemsnotes- User notes and snippetssaved_contests- User saved contestssolved_problems- Problems solved by usersuser_statistics- Aggregated user statistics
The application uses PHP session-based authentication with password hashing for security.
- Responsive design for desktop and mobile devices
- Dark theme optimized for coding
- Interactive charts for visualizing progress
- Platform-specific styling for different coding platforms
To contribute to the project:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.