Stamp
The loyalty punch card that lives on your customers' phones, not in a fee schedule.
A buy-nine-get-one-free punch card for a single small business: a scoop shop, a cafe, a salon, a food truck. Customers join at your site with a phone number or an email, in about ten seconds, and their card lives at a private link on their phone. No app to install, no plastic to lose, no per-location fee, no loyalty platform owning your regulars.
Not a starter scaffold, a finished product. The seed ships a working coffee-shop program with twelve customers at varied progress, two rewards waiting to be claimed, and six weeks of stamp history on the dashboard, so the first paint is a real program. Staff run a fast, PIN-locked counter screen: type the customer's six-character code or phone number, see their card, hit one big stamp button. When a card fills, the reward unlocks atomically, the customer gets a warm email that their next one is free, and the redeem action can never fire twice.
The owner console is a calm dark tool: a dashboard with customers, stamps this month, rewards outstanding and redeemed, and a 30-day sparkline; a searchable customers table with per-customer history and manual adjustments (with a reason, so the audit trail stays honest); and a settings tab for the program name, stamps required, reward text, accent color, and staff PIN. Nothing needs pasting into platform config, which makes this the zero-setup fork: it is live the moment it deploys.
Source-available and yours forever. Plain JS, no build step, three tables. AGENTS.md ships ten extension recipes (two-tier rewards, points per dollar, expiring stamps, SMS alerts, multi-location codes, birthday rewards, CSV export, a join QR for your site) so you or your AI tool can grow it into exactly the program your counter needs. Pairs with any site: link the join page from your menu, your receipts, or a table card. Free to fork and self-host on Hatchable.
Talk to it from your AI
Once Stamp is on your account, the same AI you used to install it can read its data, send its emails, and change its code — for the life of the project. Try things like:
Every Hatchable project ships with an MCP server scoped to it — how it works.
Features
A card on their phone, not an app
Customers join with a phone or email and get a private card link: a beautiful punch card that fills in visit by visit, with their counter code and reward status. Rejoining with the same contact brings the same card back.
A counter screen built for a rush
Staff unlock it once with a 4-digit PIN, then it is type the code, one big stamp button, done. Wrong-PIN attempts are rate limited in the database, and any PIN change relocks every register.
Rewards that cannot double-fire
Filling the card and granting the reward happen in one atomic update, and redeeming is guarded so a double-tap can never hand out two freebies. Every action lands in an append-only history.
Reward emails, automatically
Joining sends the card link; filling the card sends a note that the next one is free. Only to customers who joined with an email, and a mail hiccup never blocks a stamp.
A dashboard that reads like a bar tab
Customers, stamps this month, rewards waiting and redeemed, a 30-day sparkline, and a live activity feed. The customers table searches by name, code, phone, or email, with manual adjustments that require a reason.
Zero-setup fork + AGENTS.md
No config keys, no API keys, no cron to wire: fork it and it is live, seeded as a working coffee-shop program. Ten extension recipes ship with the code, from points-per-dollar to birthday rewards.
What you get
- Source code, deployed to your account on Hatchable
- Your own subdomain (or BYO custom domain on the Builder plan)
- A real Postgres database, scoped to this app
- The ability to make a copy, edit it, and redeploy via your AI tool
- CSV export of your data, any time