Every paid app needs the same boring parts: sign-in, checkout, a webhook that turns access on and off, a billing page, and account deletion that doesn't leave a live subscription behind. I got tired of rebuilding them, so I packaged them up as Express Track.
What's inside: React 19, TypeScript and Vite. Supabase sign-in (email, magic link, Google) with row-level security. Stripe Checkout for monthly, yearly and lifetime plans. A signed webhook that ignores duplicate events. The Stripe customer portal. Deploy configs for Vercel and Netlify.
How it's tested: 186 unit tests, 43 database security tests and Playwright smoke tests, plus a full run in Stripe test mode (subscribe, cancel, refund, failed payment, duplicate events).
Lessons from testing against real Stripe: events can show up for users who were already deleted, and React StrictMode will quietly cancel your success-page polling. Both are fixed in the kit.
It's $79 with a 30-day refund: https://boxcarkits.gumroad.com/l/express-track. Questions welcome!
Top comments (0)