A minimal starter template for 🏝️ TanStack Start. → Preview here
- React 19 + React Compiler
- TanStack Start + Router + Query
- Tailwind CSS v4 + shadcn/ui
- Drizzle ORM + PostgreSQL
- Better Auth
We're using pnpm by default, but you can modify the scripts in package.json to use your preferred package manager.
-
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.
- React Compiler docs, Working Group - React Compiler is in RC.
- TanStack/router#2863 - TanStack Start is in beta may still undergo major changes.
These scripts in package.json use pnpm by default, but you can modify them 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
to generate a migration)ui
- The shadcn/ui CLI. (e.g.pnpm ui add button
to add the button component)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-guard.ts
- Sample middleware for forcing authentication on server functions. (see #5 and #17)theme-toggle.tsx
- A simple component to toggle between light and dark mode. (#7)
Read the hosting docs for information on how to deploy your TanStack Start app.
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 applications.
- CarlosZiegler/fullstack-start-template - A more batteries-included boilerplate that provides a solid foundation for building modern web apps.