Exam Planner
Academic calendar and study planner for exam season at UFV.
Why
Existing planners assume you study by subject, not by topic. When exam season hits — five subjects, fifty topics across them, three weeks to cover everything — that abstraction breaks down. None of the tools I tried tracked how many times I’d reviewed something. Apple Calendar fills up with overlapping blocks; Notion is too much setup for what should be a fast loop; Anki is for memorization, not progress tracking. You reach the night before an exam without a clear sense of what you actually know.
So I built a planner that tracks at the topic level, not the subject level. Each topic moves through three states (not seen, reviewing, mastered) and counts how many times you’ve reviewed it. The dashboard shows preparation percentages per subject and days left per exam. The day-view lets you slot study sessions without overlap.
That’s the part I use most: looking at the topic list, seeing what’s red, and deciding what gets reviewed today.
What it does
- Tracks study progress at the topic level inside each subject, not just per subject — every topic has a state (not seen, reviewing, mastered) and a review counter
- Visual monthly calendar with exam dates and planned study blocks, with overlap detection so you don’t double-book yourself
- Dashboard with preparation percentages per subject and days remaining until each exam
- Account-less auth: each user is identified by four random Spanish words (Mullvad VPN style); no email, no password, no recoverable identity
- Two-layer persistence: localStorage saves immediately so the UI never blocks, then syncs to Turso in the background — works fully offline
How it works
Vanilla single-file frontend (HTML + CSS + JS, no framework, no build step). Backend on Node.js + Express, libSQL storage in Turso, deployed on Vercel.
Auth is account-less: each “account” is four random Spanish words (Mullvad VPN style). No email, no password — whoever has the words has the vault. Removes the entire credential surface from the threat model.
Two-layer persistence: localStorage saves immediately so the UI never blocks on the network, then syncs to Turso in the background. Works fully offline, data is available across devices once back online.



Status
In active personal use during exam seasons at UFV.
See it
- Live: boostyour.study
- Code: private — ask me
- Contact: hello@damianvidalc.com