About
The Project
acodeaday is an open-source daily coding practice platform that uses spaced repetition to help you master coding interview problems. Instead of cramming, you solve one new problem per day plus review problems at optimal intervals for long-term retention.
Core Philosophy: "A code a day keeps rejection away" - focused on understanding through consistent practice, not cramming.
Built By

Temiloluwa Ojo
Software Engineer
Connect
Why I Built This
Preparing for coding interviews can be overwhelming. Most people try to solve hundreds of problems in a short time, only to forget the patterns weeks later.
acodeaday takes a different approach:
- Consistency over intensity - One problem a day is sustainable
- Spaced repetition - Review at optimal intervals for retention
- AI assistance - Get unstuck without spoiling the solution
Tech Stack
| Component | Technology |
|---|---|
| Backend | FastAPI (Python 3.13+) with async SQLAlchemy 2.0 |
| Frontend | TanStack (React 19) with TanStack Router/Query |
| Database | PostgreSQL (Supabase) |
| Auth | Supabase Auth (JWT Bearer tokens) |
| Code Execution | Judge0 CE (self-hosted) |
| Code Editor | Monaco Editor |
| AI Tutor | litellm (Gemini, OpenAI, Anthropic) |
| Spaced Repetition | Anki SM-2 algorithm |
Open Source
acodeaday is fully open source. You can:
- Self-host it for personal use
- Fork and customize it
- Contribute improvements
- Learn from the codebase
Support the Project
If you find acodeaday useful:
- Star the GitHub repository
- Share it with others preparing for interviews
- Contribute code, problems, or documentation
- Report bugs and suggest features
Acknowledgments
- LeetCode for inspiration on the problem-solving interface
- Anki for pioneering spaced repetition software
- Judge0 for secure code execution
- All contributors who help improve the project