This project aggregates contest information from various coding platforms such as Codeforces, CodeChef, and LeetCode, and provides a frontend to display and interact with the data.
- Display upcoming and past contests from platforms like Leetcode, Codeforces, and CodeChef.
- Filter contests based on platforms.
- Bookmark a contest.
- Video Solution Link if available from the TLE YouTube channel.
- Responsive UI for mobile and tablet, with both light and dark mode.
- Repo: Contest Tracker Backend
- Frontend: Next.js, TailwindCSS, Framer Motion
- Backend: Express.js
- Endpoint:
https://codeforces.com/api/contest.list
- Description: Provides a list of contests hosted on Codeforces.
- Endpoint:
https://www.codechef.com/api/list/contests/all?sort_by=START&sorting_order=asc&offset=0&mode=all
- Description: Fetches all upcoming contests on CodeChef, sorted by start time in ascending order.
- Endpoint:
https://leetcode.com/graphql
- Description: Uses GraphQL to retrieve contest details from LeetCode.
- Endpoint:
https://www.googleapis.com/youtube/v3/playlistItems
- Description: Fetches videos related to contests from YouTube playlists.
-
Clone the repository:
git clone https://github.com/your-username/contest-tracker-backend.git
-
Navigate to the project directory:
cd contest-tracker-backend
-
Install dependencies:
npm install
-
Set up environment variables for API keys if necessary.
-
Run the application:
node server.js
-
Clone the frontend repository:
git clone https://github.com/your-username/contest-tracker-frontend.git
-
Navigate to the project directory:
cd contest-tracker-frontend
-
Install dependencies:
npm install
-
Run the development server:
npm run dev
-
Open in browser: Visit
http://localhost:3000
to see the frontend in action.
Screencast.from.03-19-2025.03-57-28.AM_1.mp4
Contributions are welcome! Please follow the contribution guidelines before submitting pull requests.
This project is licensed under the MIT License.