Case study / PWA / memberships / live
Launched a membership PWA that funds community radio and redeems deals by QR in-store.
ValueHub gives locals exclusive deals at participating businesses while subscriptions fund community radio. Deals redeem at the counter, without an app-store release as the first bet.
- Role / Co-founder and sole engineer
- Domain / Memberships / local commerce / radio
- Status / Live

Context
Local radio and neighbourhood businesses needed a shared membership that rewards listeners in-store while funding the station. Paper coupons and one-off promos do not scale.
Problem
A native app-store release was the wrong first bet for this audience. The product had to install lightly, redeem at a physical counter, and keep membership economics simple enough for local operators.
Role
Co-founder and sole engineer. Product decisions, PWA architecture, QR redemption flow, and the path from idea to a live membership product.
Approach
Scope the membership loop first. Architecture for in-store redemption and install-without-store. Build in reviewable increments. Harden the paths that touch money and identity. Handover as a system the operators can run, not a demo that needs me on every redeem.
What was built
A membership PWA that gives locals exclusive deals at participating businesses, redeemed in-store by QR scan, while subscriptions fund community radio. Members browse deals, install to the home screen without an app store, and redeem at the counter.
Results
ValueHub is live: one flat membership, QR redemption in-store, and a path for local businesses to list offers and reach Zone Radio listeners. No invented percentage metrics. The receipt is the running product.
Stack
- TypeScript
- React
- PWA
- Node
- Postgres
- QR redemption
Engage
Need a membership, PWA, or production system that has to work at the counter, not only in a pitch deck?