Create T3 App: Full-stack Next.js scaffolding CLI
Interactive CLI for scaffolding typesafe Next.js applications with the T3 Stack technology combination.
Learn more about Create T3 App
Create T3 App is a command-line interface tool that generates Next.js applications using the T3 Stack, a collection of technologies focused on full-stack type safety. The CLI provides an interactive setup process where developers select from modular components including Next.js, tRPC, Tailwind CSS, TypeScript, Prisma, Drizzle, and NextAuth.js. The tool generates project templates based on specific technology choices rather than providing a fixed template structure. It targets developers building full-stack web applications who prioritize type safety across their entire application stack.
Modular Generation
Generates project structure based on selected technologies rather than using fixed templates. Each component in the T3 Stack is optional and can be included or excluded during setup.
Full-stack Typesafety
Integrates technologies that maintain type safety from database queries through API calls to frontend components. Uses tRPC for type-safe API calls and TypeScript throughout the stack.
Opinionated Defaults
Provides pre-configured integrations between T3 Stack technologies with established patterns and conventions. Includes setup for authentication, database access, and styling systems.
// After running: npm create t3-app@latest my-app
// Example tRPC router (src/server/api/routers/post.ts)
import { z } from "zod";
import { createTRPCRouter, publicProcedure } from "~/server/api/trpc";
export const postRouter = createTRPCRouter({
hello: publicProcedure
.input(z.object({ text: z.string() }))
.query(({ input }) => {
return {
greeting: `Hello ${input.text}`,
};
}),
create: publicProcedure
.input(z.object({ name: z.string().min(1) }))
.mutation(async ({ ctx, input }) => {
return ctx.db.post.create({
data: {
name: input.name,
},
});
}),
getLatest: publicProcedure.query(({ ctx }) => {
return ctx.db.post.findFirst({
orderBy: { createdAt: "desc" },
});
}),
});Updates to Next.js 15 and next-auth v5, adds crypto import for older Node versions, and includes various template fixes.
- –Added an import for crypto in the cli envVars.ts to support older node versions
- –update to next.js 15 and next-auth v5
- –Change drizzle with PostgresQL to use identity columns
- –fix issue with prefetch protected procedure in auth templates
- –with-ia! - Add more scripts in package.json
Adds crypto import for older Node versions support.
- –Added an import for crypto in the cli envVars.ts to support older node versions
Updates to Next.js 15 and next-auth v5, changes Drizzle PostgreSQL to use identity columns, and fixes various template issues.
- –update to next.js 15 and next-auth v5
- –Change drizzle with PostgresQL to use identity columns
- –fix issue with prefetch protected procedure in auth templates
- –with-ia! - Add more scripts in package.json
- –Resolved issue where database startup script did not check for docker daemon being up and running
See how people are using Create T3 App
Top in Developer Tools
Related Repositories
Discover similar tools and frameworks used by developers
Swag
CLI tool that generates Swagger 2.0 API documentation from Go source code annotations.
yt-dlp
Python CLI for downloading audio/video from thousands of websites, fork of youtube-dl.
Grbl
Real-time motion control firmware for Arduino-based CNCs.
nvm
Per-user Node.js version manager for switching between installed versions via command line on POSIX-compliant shells.
Instaloader
Python CLI for downloading Instagram posts, stories, profiles, and metadata.