Development Guide

Patterns for building features in the current TanStack Start Drizzle kit.

Use the development guide as a reference for the repo's normal flow:

  1. define schema and validation
  2. update database code if needed
  3. add server functions or loaders
  4. build UI components
  5. wire the route

Canonical Locations

  • authenticated routes: apps/web/src/routes/_authenticated/...
  • public routes: apps/web/src/routes/_public/...
  • auth routes: apps/web/src/routes/auth/...
  • route-local server functions and loaders: apps/web/src/lib/...
  • shared UI components: apps/web/src/components/... (kebab-case)
  • shared packages: packages/**

Routes are file-based: a pathless group like _authenticated is a layout route (apps/web/src/routes/_authenticated/route.tsx) that wraps every nested route. There is no dedicated packages/features/ folder in this repo. If code becomes broadly shared, create a normal workspace package under packages/ or one of the grouped package families (e.g. packages/organization/).

Topics

  1. Development Workflow
  2. Adding Features
  3. Server Functions
  4. Function Middleware
  5. Working with Forms
  6. Database Operations

Next: Development Workflow →