Counterproof
Nothing goes to press until they sign.
Counterproof prices print jobs from your rate card, keeps every proof version on the job, and records the customer's sign-off before anything is printed.
Zip, 208 KB. MIT licence. Built 22 Oct 2026.
Live preview
This is the real site, not a mock-up. Click around; the button on it opens the working app.
What you get
Everything a tool needs, already done.
Pages and screens
- Hero
- The problem
- How a job moves
- Features
- Live app
- Job ticket
- Proof approval
Features
- Prices jobs from your rate card as you type
- Records size, paper, quantity and finish per job
- Keeps every proof version on the job
- Records customer sign-off with name, time and version
- Tracks status from quote to ready for pickup
- Light and dark themes that follow your device
Palette
#0079a8#00648c#ffffff#1a1e23#5a636e#eeebe4
Style
- Minimal
- Editorial
- Bold

For developers
A real codebase, not a page builder export.
Stack
Vite, React 19 and TypeScript for the app. The launch page is plain HTML, CSS and a little JavaScript with no build step. Vitest for unit tests, Playwright for browser tests.
Run it
unzip counterproof.zip
cd counterproof
npm install
npm run devIn the zip
site/the launch page with the built app insite/app/src/ande2e/the app source and testsdocs/technical-docs/architecture, runbook, quick referenceSTART-HERE.mdandLICENSE(MIT)
More like this
Also on the shelf

Hueproof
Hueproof checks every text and background colour pair in your brand palette against WCAG AA and AAA, suggests passing shades and exports CSS variables.

Goodhour
Add each teammate's city and working hours to see where your days overlap, get the best meeting times ranked, and keep them correct when the clocks change.

Groundbreak
A launch website for a new home community with a countdown, plan gallery, lot map and register-interest form that emails your sales office, run from one content file.
