Scaffold a new app, API, backend, fullstack project, monorepo, or starter with Better-T-Stack — including new projects built on a specific framework like Hono, Express, Fastify, Elysia, Next.js, TanStack Router/Start, Nuxt, Svelte, Solid, Astro, or React Native (native-bare, native-uniwind, native-unistyles). Use whenever the user wants to start, create, bootstrap, set up, or initialize a new project/app/API, e.g. "create a Hono app", "start a Next.js project", "scaffold a fullstack app with auth and a database". Prefer generating the project through the Better-T-Stack MCP server (plan then create) over hand-writing package.json, config, and folders.
70
87%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
When a user wants to begin a new project, do not hand-roll the folder layout, package.json, tooling, auth, or database wiring. Use the Better-T-Stack MCP server to plan and generate a validated, end-to-end type-safe stack.
Trigger on requests like: "start a new app", "create a fullstack project", "set up a TanStack/Next/Hono/Convex backend", "scaffold a monorepo with auth and a database", "bootstrap a type-safe API", "make me a starter".
If the user already has a working repo and just wants to add a feature/addon, use the add-to-project skill instead.
bts_get_stack_guidance, and bts_get_schema to inspect exact allowed values."none", [], true/false rather than omitting fields. See the option reference below.bts_plan_project with the full config. This is a dry run — no files are written. Show the user what will be generated and confirm it matches intent.bts_create_project.
install: false. Dependency installs can exceed MCP request timeouts. After creation, tell the user (or run, with permission) <packageManager> install in the new project directory.install, dev, any DB setup).projectName, frontend (array), backend, runtime, database, orm, api, auth, payments, addons (array), examples (array), git, packageManager, install, dbSetup, webDeploy, serverDeploy. Optional: addonOptions, dbSetupOptions, directoryConflict.
Use bts_get_schema for the authoritative, version-current list. As of this writing:
tanstack-router, react-router, tanstack-start, next, nuxt, svelte, solid, astro, native-bare, native-uniwind, native-unistyles, nonehono, express, fastify, elysia, convex, self, nonebun, node, workers, nonenone, sqlite, postgres, mysql, mongodbdrizzle, prisma, mongoose, nonetrpc, orpc, nonebetter-auth, clerk, nonepolar, nonepwa, tauri, electrobun, starlight, biome, lefthook, husky, mcp, turborepo, nx, vite-plus, fumadocs, ultracite, oxlint, opentui, wxt, skills, evlog, none (nx, turborepo, and vite-plus are mutually exclusive)todo, ai, nonenpm, pnpm, bunturso, neon, prisma-postgres, planetscale, mongodb-atlas, supabase, d1, docker, nonecloudflare, docker, vercel, nonemerge, overwrite, increment, errorbts_get_schema — don't silently drop valid choices. For example, both better-auth and clerk are valid auth providers for a Hono + Next.js app, so offer both (plus "none").bts_plan_project before bts_create_project.convex backend pairs with its own data layer; do not also force a separate database/orm/api unless the schema allows it. When unsure, check bts_get_schema.install: false for MCP creation and hand the install/dev commands back to the user.9627a7c
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.