Warning
OAuth providers are currently broken in development with the Nitro v3 plugin. (TanStack/router#5220)
A temporary workaround is available at #30 (comment).
A minimal starter template for ๐๏ธ TanStack Start. โ Preview here
- React 19 + React Compiler
- TanStack Start + Router + Query
- Tailwind CSS + shadcn/ui
- Drizzle ORM + PostgreSQL
- Better Auth
-
Use this template or clone this repository with gitpick:
npx gitpick dotnize/react-tanstarter myapp cd myapp
-
Install dependencies:
pnpm install
-
Create a
.env
file based on.env.example
. -
Push the schema to your database with drizzle-kit:
pnpm db push
-
Run the development server:
pnpm dev
The development server should now be running at http://localhost:3000.
The vite config is currently configured to use Nitro v3 (nightly) for deploying to Vercel.
Please refer to the TanStack Start hosting docs for deploying to other platforms.
- React Compiler docs, Working Group - React Compiler is in RC.
- Start BETA Tracking - TanStack Start is in RC.
- Devtools Releases - TanStack Devtools is in alpha and may still have breaking changes.
- Nitro v3 Beta - We're currently using Nitro v3 Nightly for Vercel deployment by default.
We use pnpm by default, but you can modify these scripts in package.json to use your preferred package manager.
auth:generate
- Regenerate the auth db schema if you've made changes to your Better Auth config.db
- Run drizzle-kit commands. (e.g.pnpm db generate
,pnpm db studio
)ui
- The shadcn/ui CLI. (e.g.pnpm ui add button
)format
,lint
,check-types
- Run Prettier, ESLint, and check TypeScript types respectively.check
- Run all three above. (e.g.pnpm check
)
deps
- Selectively upgrade dependencies via taze.
auth/middleware.ts
- Sample middleware for forcing authentication on server functions. (see #5 and #17)theme-toggle.tsx
,theme-provider.tsx
- A theme toggle and provider for toggling between light and dark mode. (#7)
Code in this template is public domain via Unlicense. Feel free to remove or replace for your own project.
- create-tsrouter-app - The official CLI tool from the TanStack team to create Router/Start projects.
- CarlosZiegler/fullstack-start-template - A more batteries-included boilerplate that provides a solid foundation for building modern web apps.