A production-ready starter template combining TanStack Start (React SSR framework) with Supabase Auth.
Includes email/password authentication, protected routes, user profiles, password reset flow, shadcn/ui components, Tailwind CSS v4, Biome linting, Vitest, GitHub Actions CI/CD, and Vercel deployment config.
Email/password authentication with sign-up, login, password reset, and protected routes out of the box.
Full-stack React framework with file-based routing, SSR, and type-safe navigation.
Beautiful, accessible components built with Radix UI and Tailwind CSS. Ready to customize.
Auth guard layout with automatic redirects. Uses TanStack Router's beforeLoad hook for server-side checks.
Automated pipeline with type checking, linting, and tests on every PR. Vercel deployment included.
Biome linting, Vitest testing, Husky pre-commit hooks, and Vercel deployment config out of the box.
| Route | Description |
|---|---|
/ | Landing page |
/login | Sign in / sign up |
/logout | Signs out and redirects to / |
/forgot-password | Request a password reset email |
/reset-password | Set a new password (via email link) |
/about | About this project |
/features | Features overview |
/dashboard | Protected — requires authentication otherwise redirects to /login |
| File | Purpose |
|---|---|
src/routes/__root.tsx | Root layout with AuthProvider and Header |
src/routes/_authenticated.tsx | Auth guard layout for protected routes |
src/routes/_authenticated/dashboard.tsx | Example protected page |
src/context/AuthContext.tsx | React context for auth state |
src/utils/supabase.ts | Supabase client singleton |
Install dependencies
npm installStart local Supabase (requires Docker)
npm run db:startCopy environment files
cp .env.example .env && cp .env.local.example .env.localReset database, generate types, and seed
npm run db:resetStart dev server
npm run dev