Inspiration
Many developers struggle to stay consistent with competitive programming. Even when they start solving problems on platforms like LeetCode, they often break their streak due to lack of reminders or progress tracking. We wanted to build a tool that motivates developers to code daily by sending automated reminders and visually tracking their problem-solving streaks. This idea led to the creation of LeetStreak, a platform that encourages consistent coding habits.
What it does
LeetStreak helps developers maintain consistency in competitive programming by tracking their LeetCode submissions and calculating daily coding streaks. The application integrates with the LeetCode GraphQL API to fetch user submission data and generate visual statistics such as solved problems and activity trends. It also sends automated reminder emails using a cron scheduler to motivate users to solve at least one problem every day and maintain their streak.
How we built it
We built LeetStreak as a full-stack web application. Frontend: Built with React to create an interactive dashboard for users to view their coding streaks and statistics. Backend: Node.js and Express were used to handle API requests and integrate with the LeetCode GraphQL API. Database: MongoDB stores user information and streak data. Scheduler: A cron job automatically checks user activity and sends reminder emails if they haven't solved a problem for the day. Email Service: Used an email service to send automated reminders to users.
Challenges we ran into
One of the main challenges was integrating with the LeetCode GraphQL API and correctly parsing the submission data to calculate daily streaks. Another challenge was implementing a reliable cron-based reminder system that checks user activity and sends emails at the right time. We also had to handle edge cases such as time zones and multiple submissions in a single day.
Accomplishments that we're proud of
We are proud that we successfully built a system that encourages developers to stay consistent with coding. The automated reminder feature combined with visual streak tracking makes the platform engaging and useful for competitive programmers. Integrating real submission data from LeetCode and presenting it in an intuitive dashboard was also a major achievement.
What we learned
During this project, we learned how to work with GraphQL APIs, manage background jobs using cron schedulers, and build a complete full-stack application with data visualization. We also improved our understanding of API integration, backend scheduling systems, and designing user-focused developer tools.
What's next for LeetStreak
In the future, we plan to add more features to make LeetStreak even more useful: Support for other coding platforms like Codeforces and CodeChef Advanced analytics and performance insights Gamification features such as badges and achievements Weekly and monthly progress reports
Log in or sign up for Devpost to join the conversation.