The Codeforces Daily Tracker is a web application designed to help users track the daily problem-solving progress of students participating in Codeforces competitions. The app allows users to add students by their Codeforces handles, view their daily performance, and see weekly statistics, including the number of problems solved and the highest rating achieved. To use the app, users can enter a Codeforces handle in the designated input field and click the "Add" button to include the student in the leaderboard. The app fetches data from the Codeforces API to retrieve the number of problems solved and the highest rating for each student. Users can also refresh the data for all students or load specific statistics for yesterday or the past week. The application is built using TypeScript and React, leveraging Supabase as the backend for data storage and real-time updates. The database schema includes tables for students and their daily progress, with row-level security enabled to manage access. The app utilizes various UI components for a responsive and user-friendly interface, including cards, buttons, and alerts. Key features of the Codeforces Daily Tracker include: - Real-time leaderboard displaying students' daily performance, sorted by the number of problems solved and highest rating. - Weekly statistics that summarize each student's performance over the last seven days. - A section for displaying yesterday's top performers, highlighting their achievements. - Admin mode functionality that allows authorized users to delete students from the leaderboard. - Local storage fallback for offline use, ensuring that users can still track progress even if the Supabase service is unavailable. - A timer that counts down to the daily reset, indicating when new data will be available. Overall, the Codeforces Daily Tracker provides a comprehensive solution for monitoring and encouraging problem-solving activities among students in a competitive programming environment.
No tags
Last Updated July 6, 2025