Inspiration
Most DSA streaks die in week two. Not because the problems are hard, but because there is no system: no plan for what to solve today, no record of what to revise, and nothing that shows the streak actually building.
What it does
StreakForge is an offline-first PWA that turns DSA prep into a daily ritual:
- Daily plan: three problems from one rotating focus topic, each with a one-tap mark-solved button, plus a shuffle if today's topic doesn't suit you.
- Heat grid: a GitHub-style contribution grid fills in as you solve, so the streak is visible at a glance.
- Spaced revision: solved problems come back on a 3/7/14-day cycle, so a problem isn't done until it's solved twice.
- Problem bank: 69 curated LeetCode problems tagged by topic and difficulty, available offline.
- Everything runs locally in the browser (localStorage + service worker). No accounts, no server, no tracking.
How we built it
A dependency-free single-page app: one HTML file, two JS modules (app logic and the problem bank), and a stylesheet, shipped as an installable PWA with a web manifest and service worker. Hosted free on GitHub Pages, installable on phone or desktop.
Challenges we ran into
Building a deterministic revision queue with no backend, and scheduling the daily plan so it rotates topics without ever repeating yesterday's list.
What we learned
How far a zero-dependency PWA can go: installable, fully offline, instant load. The entire app is a few hundred lines of hand-written code.
What's next
Weekly topic reviews, a solved-set export, and an optional LeetCode sync so the grid can reflect real submissions automatically.
Built With
- css
- github
- html
- javascript
- leetcode
- pwa
- service-worker
Log in or sign up for Devpost to join the conversation.