CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl-labs/nestjs-best-practices

NestJS patterns -- modules, DI, exception filters, validation pipes, guards, interceptors, testing, config

98

1.36x
Quality

89%

Does it follow best practices?

Impact

100%

1.36x

Average score across 12 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

module-structure.jsonverifiers/

{
  "instruction": "Organize code into NestJS modules with controllers, services, and DTOs",
  "relevant_when": "Agent builds or scaffolds a NestJS application",
  "context": "NestJS uses a module-per-feature layout. Each feature has its own module, controller, service, and dto/ subfolder. Cross-cutting concerns (filters, guards, interceptors) go in common/. The root app.module.ts imports all feature modules.",
  "sources": [
    {
      "type": "file",
      "filename": "skills/nestjs-best-practices/SKILL.md",
      "tile": "tessl-labs/nestjs-best-practices@0.2.0"
    }
  ],
  "checklist": [
    {
      "name": "module-per-feature",
      "rule": "Agent creates separate module, controller, and service files per feature domain",
      "relevant_when": "Agent structures a NestJS application with multiple features"
    },
    {
      "name": "dto-subfolder",
      "rule": "Agent places DTO classes in a dto/ subfolder within each feature module",
      "relevant_when": "Agent creates request/response DTOs for NestJS endpoints"
    },
    {
      "name": "common-directory",
      "rule": "Agent places cross-cutting concerns (exception filters, guards, interceptors) in a common/ directory",
      "relevant_when": "Agent creates shared filters, guards, or interceptors"
    },
    {
      "name": "root-app-module",
      "rule": "Agent creates a root app.module.ts decorated with @Module() that imports feature modules",
      "relevant_when": "Agent sets up the entry point of a NestJS application"
    }
  ]
}

tile.json