Foyer
Retire the clipboard. Keep every lead.
Foyer replaces the paper sign-in sheet in a model home with a tablet form and a follow-up list that tracks each visitor's status and exports to CSV.
Zip, 180 KB. MIT licence. Built 23 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
- Visitor sign-in
- Follow-up list
- Visitor notes
- CSV export
- How it works
Features
- Tablet sign-in with name, contact, budget, timeline and plans
- Statuses: new, called, appointment set, not interested
- Notes and next-action dates for each visitor
- Overdue and due-today badges on the follow-up list
- CSV export of all visitors
- Data stays on the device, no account or server
Palette
#2e4a3f#233a31#fbf8f2#e5ece7#24211d#6b645a
Style
- Warm
- Elegant
- Minimal

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 foyer.zip
cd foyer
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.

Tapeline
Keeps each customer's measurements and alteration jobs in one place, with a status board and printable claim tags, all running in the browser with no account.
