mirror of
https://github.com/FranP-code/create-better-t-stack.git
synced 2025-10-12 23:52:15 +00:00
update schema.json
This commit is contained in:
@@ -1,144 +1,175 @@
|
|||||||
{
|
{
|
||||||
"$schema": "http://json-schema.org/draft-07/schema#",
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
||||||
"$id": "https://better-t-stack.dev/schema.json",
|
"$id": "https://better-t-stack.dev/schema.json",
|
||||||
"title": "Better-T-Stack Configuration",
|
"title": "Better-T-Stack Configuration",
|
||||||
"description": "Configuration file for Better-T-Stack projects",
|
"description": "Configuration file for Better-T-Stack projects",
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"$schema": {
|
"$schema": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "JSON Schema reference for validation"
|
"description": "JSON Schema reference for validation"
|
||||||
},
|
},
|
||||||
"version": {
|
"version": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"description": "CLI version used to create this project",
|
"description": "CLI version used to create this project",
|
||||||
"pattern": "^\\d+\\.\\d+\\.\\d+$"
|
"pattern": "^\\d+\\.\\d+\\.\\d+$"
|
||||||
},
|
},
|
||||||
"createdAt": {
|
"createdAt": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"format": "date-time",
|
"format": "date-time",
|
||||||
"description": "Timestamp when the project was created"
|
"description": "Timestamp when the project was created"
|
||||||
},
|
},
|
||||||
"database": {
|
"database": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": ["none", "sqlite", "postgres", "mysql", "mongodb"],
|
"enum": [
|
||||||
"description": "Database type"
|
"none",
|
||||||
},
|
"sqlite",
|
||||||
"orm": {
|
"postgres",
|
||||||
"type": "string",
|
"mysql",
|
||||||
"enum": ["drizzle", "prisma", "mongoose", "none"],
|
"mongodb"
|
||||||
"description": "ORM type"
|
],
|
||||||
},
|
"description": "Database type"
|
||||||
"backend": {
|
},
|
||||||
"type": "string",
|
"orm": {
|
||||||
"enum": [
|
"type": "string",
|
||||||
"hono",
|
"enum": [
|
||||||
"express",
|
"drizzle",
|
||||||
"fastify",
|
"prisma",
|
||||||
"next",
|
"mongoose",
|
||||||
"elysia",
|
"none"
|
||||||
"convex",
|
],
|
||||||
"none"
|
"description": "ORM type"
|
||||||
],
|
},
|
||||||
"description": "Backend framework"
|
"backend": {
|
||||||
},
|
"type": "string",
|
||||||
"runtime": {
|
"enum": [
|
||||||
"type": "string",
|
"hono",
|
||||||
"enum": ["bun", "node", "workers", "none"],
|
"express",
|
||||||
"description": "Runtime environment (workers only available with hono backend and drizzle orm)"
|
"fastify",
|
||||||
},
|
"next",
|
||||||
"frontend": {
|
"elysia",
|
||||||
"type": "array",
|
"convex",
|
||||||
"items": {
|
"none"
|
||||||
"type": "string",
|
],
|
||||||
"enum": [
|
"description": "Backend framework"
|
||||||
"tanstack-router",
|
},
|
||||||
"react-router",
|
"runtime": {
|
||||||
"tanstack-start",
|
"type": "string",
|
||||||
"next",
|
"enum": [
|
||||||
"nuxt",
|
"bun",
|
||||||
"native-nativewind",
|
"node",
|
||||||
"native-unistyles",
|
"workers",
|
||||||
"svelte",
|
"none"
|
||||||
"solid",
|
],
|
||||||
"none"
|
"description": "Runtime environment (workers only available with hono backend and drizzle orm)"
|
||||||
]
|
},
|
||||||
},
|
"frontend": {
|
||||||
"description": "Frontend framework"
|
"type": "array",
|
||||||
},
|
"items": {
|
||||||
"addons": {
|
"type": "string",
|
||||||
"type": "array",
|
"enum": [
|
||||||
"items": {
|
"tanstack-router",
|
||||||
"type": "string",
|
"react-router",
|
||||||
"enum": [
|
"tanstack-start",
|
||||||
"pwa",
|
"next",
|
||||||
"tauri",
|
"nuxt",
|
||||||
"starlight",
|
"native-nativewind",
|
||||||
"biome",
|
"native-unistyles",
|
||||||
"husky",
|
"svelte",
|
||||||
"turborepo",
|
"solid",
|
||||||
"none"
|
"none"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"description": "Additional addons"
|
"description": "Frontend framework"
|
||||||
},
|
},
|
||||||
"examples": {
|
"addons": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": ["todo", "ai", "none"]
|
"enum": [
|
||||||
},
|
"pwa",
|
||||||
"description": "Example templates to include"
|
"tauri",
|
||||||
},
|
"starlight",
|
||||||
"auth": {
|
"biome",
|
||||||
"type": "boolean",
|
"husky",
|
||||||
"description": "Whether authentication is enabled"
|
"turborepo",
|
||||||
},
|
"none"
|
||||||
"packageManager": {
|
]
|
||||||
"type": "string",
|
},
|
||||||
"enum": ["npm", "pnpm", "bun"],
|
"description": "Additional addons"
|
||||||
"description": "Package manager"
|
},
|
||||||
},
|
"examples": {
|
||||||
"dbSetup": {
|
"type": "array",
|
||||||
"type": "string",
|
"items": {
|
||||||
"enum": [
|
"type": "string",
|
||||||
"turso",
|
"enum": [
|
||||||
"neon",
|
"todo",
|
||||||
"prisma-postgres",
|
"ai",
|
||||||
"mongodb-atlas",
|
"none"
|
||||||
"supabase",
|
]
|
||||||
"d1",
|
},
|
||||||
"docker",
|
"description": "Example templates to include"
|
||||||
"none"
|
},
|
||||||
],
|
"auth": {
|
||||||
"description": "Database hosting setup"
|
"type": "boolean",
|
||||||
},
|
"description": "Whether authentication is enabled"
|
||||||
"api": {
|
},
|
||||||
"type": "string",
|
"packageManager": {
|
||||||
"enum": ["trpc", "orpc", "none"],
|
"type": "string",
|
||||||
"description": "API type"
|
"enum": [
|
||||||
},
|
"npm",
|
||||||
"webDeploy": {
|
"pnpm",
|
||||||
"type": "string",
|
"bun"
|
||||||
"enum": ["workers", "none"],
|
],
|
||||||
"description": "Web deployment"
|
"description": "Package manager"
|
||||||
}
|
},
|
||||||
},
|
"dbSetup": {
|
||||||
"required": [
|
"type": "string",
|
||||||
"version",
|
"enum": [
|
||||||
"createdAt",
|
"turso",
|
||||||
"database",
|
"neon",
|
||||||
"orm",
|
"prisma-postgres",
|
||||||
"backend",
|
"mongodb-atlas",
|
||||||
"runtime",
|
"supabase",
|
||||||
"frontend",
|
"d1",
|
||||||
"addons",
|
"docker",
|
||||||
"examples",
|
"none"
|
||||||
"auth",
|
],
|
||||||
"packageManager",
|
"description": "Database hosting setup"
|
||||||
"dbSetup",
|
},
|
||||||
"api",
|
"api": {
|
||||||
"webDeploy"
|
"type": "string",
|
||||||
],
|
"enum": [
|
||||||
"additionalProperties": false
|
"trpc",
|
||||||
}
|
"orpc",
|
||||||
|
"none"
|
||||||
|
],
|
||||||
|
"description": "API type"
|
||||||
|
},
|
||||||
|
"webDeploy": {
|
||||||
|
"type": "string",
|
||||||
|
"enum": [
|
||||||
|
"workers",
|
||||||
|
"none"
|
||||||
|
],
|
||||||
|
"description": "Web deployment"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [
|
||||||
|
"version",
|
||||||
|
"createdAt",
|
||||||
|
"database",
|
||||||
|
"orm",
|
||||||
|
"backend",
|
||||||
|
"runtime",
|
||||||
|
"frontend",
|
||||||
|
"addons",
|
||||||
|
"examples",
|
||||||
|
"auth",
|
||||||
|
"packageManager",
|
||||||
|
"dbSetup",
|
||||||
|
"api",
|
||||||
|
"webDeploy"
|
||||||
|
],
|
||||||
|
"additionalProperties": false
|
||||||
|
}
|
||||||
@@ -16,7 +16,8 @@
|
|||||||
"!**/templates/**",
|
"!**/templates/**",
|
||||||
"!**/.turbo",
|
"!**/.turbo",
|
||||||
"!**/package.json",
|
"!**/package.json",
|
||||||
"!**/analytics-data.json"
|
"!**/analytics-data.json",
|
||||||
|
"!**/schema.json"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"formatter": {
|
"formatter": {
|
||||||
|
|||||||
Reference in New Issue
Block a user