I built a small side project called SQL Case Files — a detective-themed SQL practice game that runs entirely in the browser. You solve cases by writing real SQL queries against a SQLite database, and the story progresses as you uncover clues from the data.
A few things I focused on:
• Runs 100% locally in the browser using SQLite WASM
• No sign-up, no backend, no data collection
• Short “cases” instead of quizzes — each clue comes from a query result
• Minimalist noir UI inspired by detective files
• A validator that compares result sets rather than SQL text (so alternate solutions work)
• Works offline after first load (PWA)
I built it because I wanted a more narrative/immersive way to relearn SQL, and I’m hoping to hear what the HN community thinks — especially around:
• Are the cases too easy/too hard?
• Is the validator forgiving enough?
• Ideas for new case formats or mechanics?
• Any performance issues on older devices?
If you try it, I’d love your feedback or bug reports.
Thanks for taking a look.
hackstarky•2h ago
I built a small side project called SQL Case Files — a detective-themed SQL practice game that runs entirely in the browser. You solve cases by writing real SQL queries against a SQLite database, and the story progresses as you uncover clues from the data.
A few things I focused on:
• Runs 100% locally in the browser using SQLite WASM • No sign-up, no backend, no data collection • Short “cases” instead of quizzes — each clue comes from a query result • Minimalist noir UI inspired by detective files • A validator that compares result sets rather than SQL text (so alternate solutions work) • Works offline after first load (PWA)
I built it because I wanted a more narrative/immersive way to relearn SQL, and I’m hoping to hear what the HN community thinks — especially around:
• Are the cases too easy/too hard? • Is the validator forgiving enough? • Ideas for new case formats or mechanics? • Any performance issues on older devices?
If you try it, I’d love your feedback or bug reports. Thanks for taking a look.