The modern way to build React SPAs.
preview.mp4
bun install
bun run mock-server.ts # Mock backend on port 8000
bun run dev # App on port 3000Find commented code in
src/features/auth/hooks/use-sign-in-formandsrc/features/auth/hooks/use-sign-up-formto enable real auth API requests to mock server.
src/
├── components/
│ ├── common/
│ │ └── form/
│ ├── layout/
│ ├── ui/
├── config/
├── constants/
├── contexts/
├── features/
│ ├── auth/
│ │ ├── components/
│ │ │ ├── field-groups/
│ │ │ ├── fields/
│ │ │ ├── forms/
│ │ ├── hooks/
│ │ ├── lib/
│ │ ├── schema/
│ │ ├── services/
│ │ └── types/
│ └── products/
│ ├── components/
│ ├── services/
│ └── types/
├── hooks/
├── lib/
│ ├── api/
│ ├── form/
│ └── tanstack-query/
├── routes/
│ ├── _authed/
│ │ └── (authLayout)/
│ └── _guest/
│ └── (auth)/
├── store/
├── types/
├── utils/
├── devtools.tsx
├── env.ts
├── main.tsx
├── router.tsx
└── styles.css
- Auth state management
- Form handling with validation
- Route-level data fetching
- Theme support
- Document head management
- Auth guards
- Devtools
- Mock-server for testing
- React 19 + TypeScript
- TanStack Router
- TanStack Query
- TanStack Form
- Zustand
- Ky
- Zod
- Tailwind CSS v4
- Shadcn/ui
- Base ui
- Vite
- Biome
Built with ❤️ & 🏝️ to save you from writing the same boilerplate again. Start your next project today.