CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

nextjs-project-starter

Scaffold a Next.js 15 App Router project with TypeScript, server/client component conventions, route groups, layouts, loading/error boundaries, Route Handlers, middleware, and SSR/SSG/ISR strategies.

Quality

73%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./frontend/nextjs-project-starter/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a dense, highly actionable reference with concrete scaffold commands, complete code patterns, and a verified first-steps sequence. Its weaknesses are boilerplate sections Claude could generate unaided, undefined helper functions behind otherwise copy-paste-ready examples, and a monolithic single-file layout that offloads nothing to reference files.

Suggestions

Move advanced material (SSR/SSG/ISR patterns, generateStaticParams, dynamic metadata, integration notes) into one-level-deep reference files such as references/rendering.md and references/integrations.md, keeping SKILL.md as a lean overview.

Cut or compress boilerplate Claude already knows — the root layout, basic useState client component, and loading skeleton — down to one-line notes of where each file goes and its 'use client' requirement.

Define or stub the service layer (src/services/users.ts) and show the .env.example contents so every code example is genuinely copy-paste executable, and add brief recovery guidance for scaffold/type-check failures in First Steps.

DimensionReasoningScore

Conciseness

There is no padded explanatory prose — every section is commands, configuration, or code — but several full sections (root layout with Inter font, a basic useState-filtering client component, loading skeleton, error boundary) restate standard boilerplate Claude already knows and could be trimmed or cut. This fits 'mostly efficient but could be tightened' better than the prose-padded 2 anchor or the only-minor-trimming 4 anchor.

3 / 5

Actionability

Highly actionable: exact scaffold command with flags, a prompt-selection checklist, and complete executable examples for next.config, layouts, pages, Route Handlers, middleware, and Server Actions. It stops short of 5 because code imports helpers (getUsers, createUser, fetchPosts, getUser) that are never defined, and the referenced .env.example contents are never shown.

4 / 5

Workflow Clarity

'First Steps After Scaffold' is a clear numbered sequence with explicit validation checkpoints — verify the app at localhost:3000 and run 'npx tsc --noEmit' — and the scaffold section pre-answers CLI prompts. It misses 5 because there is no error-recovery guidance (what to do if the build or type check fails).

4 / 5

Progressive Disclosure

The body is well-sectioned and navigable, but it is a single ~420-line file with no bundle files at all: SSR/SSG/ISR deep patterns, generateStaticParams, dynamic metadata, and integration notes are inlined content that clearly belongs in one-level-deep reference files. This matches the 3 anchor ('some structure... content that should be separate is inline') better than the 4 anchor's 'most content is appropriately placed'.

3 / 5

Total

14

/

20

Passed

Description

71%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is specific and feature-comprehensive with good natural trigger terms, clearly identifying its Next.js 15 App Router scaffolding niche. Its main weakness is the complete absence of a 'Use when...' trigger clause, which caps completeness and slightly limits how reliably users or Claude would know when to invoke it.

Suggestions

Append an explicit trigger clause, e.g. 'Use when creating a new Next.js app, setting up the App Router, or when the user mentions Next.js, React project setup, or scaffolding a frontend.'

Add common synonyms such as 'React', 'create-next-app', or 'web app scaffold' to broaden natural trigger coverage without adding vagueness.

Narrow the SSR/SSG/ISR and middleware wording slightly (e.g. 'rendering strategy configuration for Next.js') to reduce overlap with general React and deployment skills.

DimensionReasoningScore

Specificity

The description enumerates comprehensive concrete features — 'server/client component conventions, route groups, layouts, loading/error boundaries, Route Handlers, middleware, and SSR/SSG/ISR strategies' — covering routing, rendering, error handling, and middleware with no notable gaps, matching the 'multiple specific concrete actions; comprehensive coverage' anchor.

5 / 5

Completeness

The 'what' is explicit and clear ('Scaffold a Next.js 15 App Router project with...'), but there is no 'Use when...' clause or equivalent explicit trigger guidance, which caps completeness at 3 per the judging guidelines. It cannot score 4 since the 'when' is entirely absent, not just under-specified.

3 / 5

Trigger Term Quality

Strong natural keywords users would actually say: 'Next.js 15', 'App Router', 'TypeScript', 'route groups', 'middleware', 'SSR/SSG/ISR'. It falls short of the 5 anchor because common synonyms and variations like 'React', 'create a Next.js app', or 'frontend project' are missing, but coverage is clearly better than the partial-keyword 3 anchor.

4 / 5

Distinctiveness Conflict Risk

It carves a clear niche (Next.js 15 App Router project scaffolding) distinct from most skills, but phrases like 'SSR/SSG/ISR strategies' and 'middleware' carry minor overlap risk with general React/SSR or deployment-related skills, fitting the 'mostly distinct; minor overlap risk' anchor rather than the minimal-conflict 5.

4 / 5

Total

16

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

achreftlili/deep-dev-skills

Path

frontend/nextjs-project-starter/SKILL.md

Reviewed

Table of Contents

Is this your skill?

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.