srsly.fit
A full-stack workout planner on raw SQL and stored procedures, with a public demo that is read-only by construction.
Origin
A four-person database systems course project (CS 411). I built the drag-and-drop workout editor, the exercise-suggestion query, and the stored-procedure save path. After the course, I prepared the public demo and added browser tests.
The constraint
The course required raw SQL, no ORM. Eight tables normalized to BCNF over a catalog of roughly 2,900 exercises. A workout save touches three tables, so it lives in stored procedures that wrap the writes in a transaction with rollback.
Raw SQL started as a constraint and ended as something I would defend. It forces parameterization discipline and query-plan literacy that an ORM hides.
Making it safe to publish
The real problem came after the course: how do you put a database-backed project on the public internet? I built a demo boundary with one data interface and two implementations, fixtures or a real connection pool, switched by validated environment config.
The public deployment has no database credentials at all, and every mutation route returns a server-side 403 in demo mode. Visitors can explore the demo without changing stored data or making database calls. Playwright tests in CI check that writes are blocked.