2026 · Rebuild · Pricing engine
Mammoth Dev
A studio site built around a 24-step quiz that prices a project deterministically and renders the estimate to PDF in the browser.
- Next.js 14
- MUI 5
- NestJS 10
- TypeORM
- PostgreSQL 16
- @react-pdf/renderer
- steps on the longest quiz path
- 24
- feature pages spliced into 9 base steps
- 15
- NestJS modules over 25 entities
- 26
- point PDF composed in the browser
- 800×1185
What I walked into
A studio site built around a cost calculator that has to survive being wrong in public: a visitor answers a quiz and expects a price that holds.
Behind it sits a 26-module NestJS monolith over 25 entities that serves the public pages, the admin CMS and a Telegram bot with scheduled broadcasts.
What I changed, and why
A quiz that grows as you answer
Any of 15 feature detail pages is spliced into the 9 base steps as you answer, up to 24 steps in all.
A deterministic price
Option hours multiplied by role rate: frontend at $11 an hour, backend $15, design $8, AI $20.
The PDF never leaves the browser
The estimate is composed into an 800×1185 pt PDF through @react-pdf/renderer, so nothing is uploaded and the route works offline once loaded.
One monolith, three audiences
The same NestJS backend serves the public pages, the admin CMS and a Telegram bot with scheduled broadcasts.
A cost calculator has to survive being wrong in public.
Where it landed
The quiz prices a project from option hours and role rates, and the visitor leaves with the estimate as a PDF that never touched a server.
The backend keeps 26 modules over 25 entities behind the public site, the admin CMS and the Telegram bot.