CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

nestjs-project-starter

Scaffold a production-ready NestJS 10+ API with TypeScript strict mode, modular architecture, validation, Swagger docs, and database integration.

Quality

72%

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 ./backend-node/nestjs-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.

A highly actionable, well-organized scaffold guide with executable commands and complete code patterns, but it is a monolithic file that inlines a full pattern library (much of it boilerplate Claude already knows) instead of splitting it into reference files, and a few referenced artifacts (data-source.ts, .env.example) are never defined.

Suggestions

Split the nine inlined code patterns into reference files (e.g. references/patterns.md for guard/interceptor/filter, references/orm.md for TypeORM/Prisma) and keep SKILL.md as an overview with one-level-deep pointers.

Define or show the missing artifacts referenced by commands and steps: 'src/data-source.ts' for TypeORM migrations and the '.env.example' template contents.

Trim textbook boilerplate Claude already knows (the pass-through JwtAuthGuard, standard interceptor/filter bodies) down to the project-specific conventions that differ from NestJS defaults.

DimensionReasoningScore

Conciseness

Prose sections are lean and instructional, but roughly 250 lines are textbook NestJS boilerplate Claude already knows — e.g. the trivial JwtAuthGuard ('export class JwtAuthGuard extends AuthGuard(\'jwt\')' with a pass-through canActivate) and the standard logging interceptor and exception filter. This is 'mostly efficient but includes some unnecessary explanation or could be tightened', not the lean anchor 5, yet it avoids concept-explanation padding that would drop it to 2.

3 / 5

Actionability

The scaffold commands ('npx @nestjs/cli@latest new <project-name> --strict') and code files are concrete and copy-paste ready, covering controller, service, entity, DTO, module wiring. Minor gaps keep it below 'fully executable': migration commands reference 'src/data-source.ts' which is never defined or shown, and '.env.example' is required by First Steps but its contents are not provided.

4 / 5

Workflow Clarity

A clear sequence runs Scaffold Command → Project Structure → patterns → First Steps After Scaffold, ending with a smoke check ('Test the API: curl http://localhost:3000/api/docs'). This matches 'clear sequence with most checkpoints present; minor validation gaps' — there is one verification step but no deeper checkpoints (e.g. confirming the build or type-check passes after wiring), so not 5.

4 / 5

Progressive Disclosure

There are no bundle files at all (no references/, scripts/, assets/), so nine full reference implementations (guard, interceptor, filter, entity, etc.) are inlined in a ~420-line monolithic SKILL.md. Section headers are clear and navigation is one-level, but 'content that should be separate is inline' — the pattern library belongs in reference files — matching anchor 3 rather than the well-split anchor 4.

3 / 5

Total

14

/

20

Passed

Description

70%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.

A crisp, third-person description with strong specificity and an unambiguous NestJS niche, but it omits any 'Use when...' trigger guidance, which caps completeness and weakens its value for skill selection.

Suggestions

Append an explicit trigger clause such as: 'Use when creating a new NestJS project, scaffolding a Node/TypeScript backend API, or setting up Swagger-documented REST services.'

Add common user phrasings/synonyms (e.g. 'new backend service', 'REST API', 'Node backend') to strengthen trigger-term coverage.

Keep the feature list but consider framing items as actions (e.g. 'scaffold, configure validation, wire Swagger') to lift specificity.

DimensionReasoningScore

Specificity

The description names a concrete action ('Scaffold a production-ready NestJS 10+ API') plus specific deliverables ('TypeScript strict mode, modular architecture, validation, Swagger docs, and database integration'). It lists several specific features rather than multiple distinct actions, so it sits between the 'several specific actions; minor gaps' (4) and 'comprehensive multiple actions' (5) anchors, but the single verb 'Scaffold' with feature modifiers keeps it at 4 rather than 5.

4 / 5

Completeness

The 'what' is explicit and concrete, but there is no 'Use when...' clause or equivalent trigger guidance anywhere in the description. Per the judging guideline, a missing explicit trigger clause caps completeness at 3 ('clear what, when missing or only weakly implied').

3 / 5

Trigger Term Quality

Natural keywords users would say are present: 'NestJS', 'API', 'TypeScript', 'Swagger', 'database', 'scaffold'. Common variations are missing — e.g. 'set up a Node backend', 'new backend project', 'REST API' — so it matches 'good keyword coverage; a few natural terms missing' rather than the comprehensive anchor 5, and clearly exceeds 'some relevant keywords but missing variations' (3).

4 / 5

Distinctiveness Conflict Risk

'NestJS 10+' pins a clear niche with distinct triggers; a user mentioning NestJS would unambiguously route here, and overlap with generic Node/backend skills is minimal. This matches the anchor 'clear niche with distinct triggers; minimal conflict risk'.

5 / 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

backend-node/nestjs-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.