| id |
templates |
| title |
Templates |
Templates are reusable presets of integrations. They capture configuration, not code.
tanstack create my-app --template https://example.com/template.json
tanstack create my-app --template ./local-template.json
# 1. Create project with desired integrations
tanstack create my-preset --integrations clerk,drizzle,sentry
# 2. Initialize template
cd my-preset
tanstack template init
# 3. Edit template-info.json, then compile
tanstack template compile
# 4. Use or distribute template.json
tanstack create new-app --template ./template.json
template-info.json:
{
"id": "my-saas",
"name": "SaaS Starter",
"description": "Auth, database, monitoring",
"framework": "react",
"mode": "file-router",
"typescript": true,
"tailwind": true,
"integrations": ["clerk", "drizzle", "sentry"],
"integrationOptions": {
"drizzle": { "database": "postgres" }
}
}
| Field |
Required |
Description |
id |
Yes |
Unique identifier |
name |
Yes |
Display name |
description |
Yes |
Brief description |
framework |
Yes |
react |
mode |
Yes |
file-router or code-router |
typescript |
Yes |
Enable TypeScript |
tailwind |
Yes |
Include Tailwind |
integrations |
Yes |
Integration IDs |
integrationOptions |
No |
Per-integration config |
banner |
No |
Image URL for UI |
|
Template |
Integration |
| Contains code |
No |
Yes |
| Adds files |
No |
Yes |
| Configuration preset |
Yes |
No |