Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Bootstrap a new Next.js (App Router, TypeScript) web app with current packages and no deprecated APIs. Use when the user wants to start, scaffold, or set up a new Next.js project, a React web app, a SaaS or dashboard or landing page on Next.js, or asks to "create a new nextjs app". Handles private, open-source, and private-plus-open-source variants, Prisma and Postgres, next-auth, Tailwind, and shadcn or Mantine.
.claude/skills/ccplugins-nextjs-app/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 697% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 59% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -65% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 21% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -24% | 0% |
Bootstrap a new Next.js web app the way this owner builds them: App Router, TypeScript strict, current stable packages, no deprecated APIs, a clean feature structure, and the house git and CI workflow.
First read these shared rules (they override anything you remember): ../shared/house-rules.md, ../shared/no-ai-attribution.md, ../shared/git-and-ci.md, ../shared/docs-and-context.md, ../shared/hardening.md, and (for public repos) ../shared/open-source-docs.md.
This is a hard stop. Do not run any scaffolding command until the user has answered.
First, get the project brief: one paragraph on what the app does, its main features, target users, and any hard constraints. If the user has not given one, ask for it. The brief drives naming, the route groups, and the data model.
Then present the variant choices below, wait for the answers, and build. If a choice has multiple options, ask; do not assume. Ask in one batch.
(a private product with a separate public core or SDK). See references/variants.md.
If the user already answered some of these in their prompt, do not re-ask.
node -v, want the current LTS or newer) and the package manager.scripts/check-latest.sh to get live stable versions from npm. Pin those,not versions from memory. See ../shared/house-rules.md rule 2.
(../shared/docs-and-context.md). Recent Next.js ships docs in node_modules/next/dist/docs/; read the relevant guide and obey deprecation notices.
Use the official generator so you inherit its current defaults:
pnpm create next-app@latest <name> --typescript --app --eslint --tailwind --src-dir --import-alias "@/*"Adjust flags to the answers. Let the CLI pick the current Next major; do not force a version you remember. After it runs, read references/stack.md for the exact dependency set to add and references/structure.md for the folder layout.
references/structure.md.
references/stack.md.handling): references/variants.md.
../shared/hardening.md.
../shared/git-and-ci.md.
references/quality-gates.md.docs/ and README per ../shared/docs-and-context.md.CODE_OF_CONDUCT, SECURITY, issue and PR templates, CHANGELOG via release-please) per ../shared/open-source-docs.md, and run the open-source hard gate in ../shared/no-ai-attribution.md before the first push.
.env*, add .env.example. Never commit secrets.Run the quality gates in references/quality-gates.md (typecheck, lint, production build, and a dev-server smoke check). Report real results. If a build fails, fix it or say so with the output. Do not claim done on an unbuilt app.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 6,249 | 7,961 | +27% | 1 | 1 | 0% | 298 | 2,375 | +697% | 0 | 0 | — |
case-02 | fail→pass | 11,101 | 8,579 | -23% | 1 | 1 | 0% | 1,614 | 2,566 | +59% | 0 | 0 | — |
case-03 | fail→pass | 31,243 | 7,061 | -77% | 1 | 1 | 0% | 6,270 | 2,225 | -65% | 0 | 0 | — |
case-04 | pass→pass | 20,500 | 36,838 | +80% | 1 | 1 | 0% | 3,422 | 6,153 | +80% | 0 | 0 | — |
case-05 | pass→pass | 24,097 | 26,965 | +12% | 1 | 1 | 0% | 4,192 | 5,555 | +33% | 0 | 0 | — |
case-06 | pass→pass | 14,354 | 17,502 | +22% | 1 | 1 | 0% | 2,242 | 3,700 | +65% | 0 | 0 | — |
case-07 | pass→pass | 5,082 | 12,423 | +144% | 1 | 1 | 0% | 869 | 2,420 | +178% | 0 | 0 | — |
case-08 | fail→pass | 13,191 | 9,060 | -31% | 1 | 1 | 0% | 2,043 | 2,469 | +21% | 0 | 0 | — |
case-09 | fail→pass | 12,558 | 2,928 | -77% | 1 | 1 | 0% | 1,867 | 1,417 | -24% | 0 | 0 | — |
case-10 | fail→pass | 5,911 | 5,705 | -3% | 1 | 1 | 0% | 834 | 1,855 | +122% | 0 | 0 | — |
case-11 | pass→pass | 14,042 | 9,294 | -34% | 1 | 1 | 0% | 2,240 | 2,481 | +11% | 0 | 0 | — |
case-12 | fail→fail | 12,514 | 12,782 | +2% | 1 | 1 | 0% | 2,222 | 3,164 | +42% | 0 | 0 | — |
case-13 | fail→pass | 8,436 | 5,462 | -35% | 1 | 1 | 0% | 1,227 | 1,814 | +48% | 0 | 0 | — |
case-14 | pass→pass | 12,211 | 9,851 | -19% | 1 | 1 | 0% | 1,855 | 2,596 | +40% | 0 | 0 | — |
case-15 | pass→pass | 13,818 | 5,754 | -58% | 1 | 1 | 0% | 2,003 | 1,845 | -8% | 0 | 0 | — |
case-16 | pass→pass | 4,312 | 3,571 | -17% | 1 | 1 | 0% | 558 | 1,580 | +183% | 0 | 0 | — |
case-17 | fail→pass | 15,584 | 8,007 | -49% | 1 | 1 | 0% | 2,231 | 2,205 | -1% | 0 | 0 | — |
case-18 | fail→pass | 11,863 | 7,308 | -38% | 1 | 1 | 0% | 1,630 | 2,003 | +23% | 0 | 0 | — |
case-19 | fail→pass | 15,879 | 3,021 | -81% | 1 | 1 | 0% | 2,163 | 1,457 | -33% | 0 | 0 | — |
case-20 | pass→pass | 11,420 | 3,515 | -69% | 1 | 1 | 0% | 1,826 | 1,574 | -14% | 0 | 0 | — |
case-21 | fail→pass | 13,222 | 11,103 | -16% | 1 | 1 | 0% | 2,509 | 3,044 | +21% | 0 | 0 | — |
case-22 | fail→pass | 3,879 | 2,002 | -48% | 1 | 1 | 0% | 447 | 1,278 | +186% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 21 counted toward the lift figure. The other 1 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +55 percentage points is the difference between those two pass rates over the 21 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.