T3 Stack (Theo's typesafe Next.js) icon

T3 Stack (Theo's typesafe Next.js)

Stack

[Theo Browne](https://x.com/t3dotgg)'s opinionated Next.js stack: TypeScript end-to-end, tRPC for the API, Prisma or Drizzle for the DB, Tailwind for styles, NextAuth for sessions. The de-facto setup for typesafe full-stack TS shops.

Stack

What this is

create-t3-app generates this exact setup. The pitch: end-to-end TypeScript with no API layer between the client and server (tRPC infers the types). For teams that buy into ‘TypeScript everywhere’, this is the path of least resistance to a typesafe full-stack app.

When to pick this stack

  • You’re a TypeScript shop and want type-safety from the database query through the React component prop.
  • You want Next.js’s flexibility (routes, RSC, middleware) without picking every adjacent tool yourself.
  • You’re already deploying on Vercel or willing to.

What we’d swap

  • Prisma → Drizzle: Drizzle has won mindshare in 2025-2026 for its lighter runtime and SQL-y feel. Both work in T3.
  • Clerk → NextAuth: NextAuth is the historical T3 default and free; Clerk is paid but ships hosted UI you don’t have to design.
  • Vercel → Cloudflare Pages: cheaper at scale; needs a couple of compatibility flags for Next.js but works.

Common gotchas

  • tRPC’s type inference is excellent but couples your client and server tightly; if you’re going to ship a public REST API later, plan for that boundary explicitly.
  • Next.js App Router + Server Components is the modern default but has a learning curve; the T3 generator currently supports both Pages and App routers, pick App for new projects.

Popular tags

In this stack

8 tools

Related