Build and Ship Faster
Launch is a production-ready React Native + Expo starter that gives you a real app baseline with the systems you typically need before launch. It is designed to get you building quickly without locking you into a rigid product shape. One codebase covers iOS, Android, iPad, and Android tablets. Use it for a consumer app, SaaS companion, or internal tool—then customize the product layer to match your needs.Foundations Included
Launch isn’t opinionated about the product. It provides the foundations so you can move faster:Authentication
Better Auth provides the authentication layer for the app and API, with Apple Sign-In, Google Sign-In, and email OTP. Sessions persist securely via Expo SecureStore, and protected routes keep auth‑gated screens consistent. → Set up authentication · Better AuthPayments and Subscriptions
Integrate Stripe for one‑time payments or subscriptions, RevenueCat for subscription management and entitlements, and Superwall for paywall presentation and experiments. The backend handles webhooks, receipt validation, and subscription status. → Explore payment options · Stripe · RevenueCat · SuperwallFile Uploads
Upload photos, documents, or large media using AWS S3 presigned URLs. Smaller files upload directly to S3; large files use multipart uploads; long‑running transfers run in the background with native upload support. → Learn about file uploads · AWS S3AI Features
Add AI chat with streaming responses via a custom backend. The API proxies OpenAI or Anthropic requests (with auth), streams responses over SSE, and keeps models and prompt handling centralized. → Add AI featuresPush Notifications
Register devices, manage tokens, and send notifications across iOS and Android. FCM and APNs are wired in, with server routes for sending pushes and running simple campaigns (by cohort, platform, or user list). → Set up push notifications · Firebase · Apple APNsOnboarding and Theming
Ship a guided onboarding flow with name capture, optional phone OTP, and push permission setup. Theming includes light/dark preference storage plus a HeroUI theme layer you can swap per app style. → See onboarding flowHow Features Plug In
Launch uses a Feature Registry to keep optional modules (payments, AI, uploads, Sentry, OneSignal) in one place. Each feature declares whether it is enabled, which providers it mounts, which routes it adds, and what setup or env vars it requires. The app composes enabled providers in order, so you can add or remove a feature without hunting through the codebase. → Feature registry guideStack and Integrations
Launch is fully TypeScript with end‑to‑end types from Prisma to the mobile UI. Stack- Mobile: React Native + Expo
- Navigation: Expo Router
- UI: HeroUI + NativeWind (HeroUI Native)
- API: tRPC
- Database: Prisma + PostgreSQL
- Auth: Better Auth
- Monorepo: Turborepo
- AWS S3 → File uploads
- Stripe → Stripe setup
- RevenueCat → RevenueCat setup
- Superwall → Superwall setup
- OpenAI / Anthropic → AI features
- Expo EAS → EAS deployment
- Firebase (FCM) → Push notifications
- APNs → Push notifications
Start Building
Get your development environment running
Explore the Codebase
Understand how everything fits together
Questions? Check Troubleshooting for common issues, or
explore the docs to learn how each feature works.