Webhook-first availability
Inventory that changes only on verified money events. The same pattern holds for tables, seats, stock, or appointment slots.
A one-night Vietnamese live show, sold as 26 premium tables at $700–$900, to a bilingual audience, with a floor plan that stays truthful as tables sell.

01 The brief
TRI ÂN is a single night: Đinh Công Phụng live at Cabramatta Golf Club, 3 October 2026. No seat map exists for a show like this — the product is tables, in three tiers, bought by families and groups, marketed in Vietnamese and English at the same time.
The problem wasn’t presentation, it was truth: once two tables sell through Stripe, the map on the site must know — immediately, without anyone editing a page. And a paid table can never, under any race condition, be sold twice.

02 What was built
One night, 26 tables, two languages, zero room for error.
03 The system
Step 1 — Marketing
Bilingual hero, artist wall, real show photography. Facebook and Zalo traffic lands on one page with one job.
04 Behind the screen
On every webhook, if the table already has a record, the event is acknowledged and the original stands. A webhook storm cannot overwrite a paid reservation.
The whole reservation service — health, availability, leads, holds, webhook, admin, revenue report — is one Cloudflare Worker with a KV store. No framework, no database server, nothing to patch at 2am before a show.
Tier prices exist on the site and in the worker. A guard script fails the build if the two copies disagree, or if an old price survives an update. Consistency is enforced, not hoped for.
Before the first fetch, the map renders from a static snapshot of known reservations. If the API is unreachable, the show still sells from truth — never from a blank slate.
The Vietnamese dictionary is typed against the English one. A missing translation is a compile error, not a live-page embarrassment.
05 Project screenshots
Live — bilingual show and table-booking site






06 What became reusable
Inventory that changes only on verified money events. The same pattern holds for tables, seats, stock, or appointment slots.
Pricing as dashboard objects, references carrying meaning, one Worker reconciling it all.
The entire show — dates, venue, artists, tiers, FAQ — lives in one content file. Show #2 is a new file, not a rebuild.
Compiler-enforced language parity, ready for any audience that arrives in two languages.
· Next case study — 03
Angel Wings
A demonstration storefront for wing hire and purchase, with date selection, a basket and an owner view.