I built a tested Stripe + Supabase starter so I'd never wire billing again
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…
Creating a paid app often involves repetitive, mundane tasks like user authentication, checkout functionality, webhooks for managing access, a billing page, and ensuring user data is tidied up after deletion. The author found these processes tedious, leading to the creation of Express Track, a starter kit that simplifies these common app components.
The kit includes React 19, TypeScript, and Vite for frontend development. Supabase is utilized for user authentication, supporting email sign-ins, magic link verification, and Google sign-ins. Row-level security is implemented to ensure data privacy. Stripe Checkout is integrated to handle monthly, yearly, and lifetime subscription plans.
A signed webhook is included to filter out duplicate events. Stripe's customer portal is also incorporated. The kit comes with deployment configurations for Vercel and Netlify.
To ensure the system's reliability, the author conducted extensive testing. The kit comprises 186 unit tests, 43 security tests for database integrity, and Playwright smoke tests to simulate real-world user interactions. Additionally, a full run is executed in Stripe's test environment, simulating actions such as subscribing, canceling, refunding payments, handling failed transactions, and verifying the handling of duplicate events.
In practical testing, the author discovered a couple of issues. First, events could still be generated for users who had been deleted, and second, React's StrictMode mode could cancel actions intended to update a success page. Both problems were identified and resolved within the kit. The starter kit is available for purchase at $79, with a 30-day refund policy in case it does not meet expectations. Further inquiries or support can be directed to the provided link on Gumroad.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.