NestJS best practices and architecture patterns for building production-ready applications. This skill should be used when writing, reviewing, or refactoring NestJS code to ensure proper patterns for modules, dependency injection, security, and performance.
Install with Tessl CLI
npx tessl i github:Kadajett/agent-nestjs-skills --skill nestjs-best-practices73
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillAgent success when using this skill
Validation for skill structure
Secure JWT authentication setup
JWT library choice
100%
100%
Short access token lifetime
100%
100%
Refresh token implemented
100%
100%
Secret from config, not hardcoded
100%
100%
Safe JWT payload
100%
100%
Strategy validates user existence
100%
100%
Password change token invalidation
100%
100%
Guards for route protection
80%
100%
Public decorator pattern
0%
100%
Global ValidationPipe
100%
100%
ConfigModule with validation
25%
100%
Feature module architecture and error handling
Feature module structure
100%
100%
Single responsibility services
100%
100%
Custom repository class
100%
100%
EventEmitter2 for side effects
100%
100%
OnEvent listeners in separate classes
100%
100%
Constructor injection used
100%
100%
Exceptions thrown from service
50%
100%
Global exception filter
100%
100%
Response DTOs with @Exclude
80%
100%
Module exports pattern
100%
100%
Shared module for cross-cutting code
62%
100%
Interface injection tokens and provider scopes
Symbol or abstract class token
100%
100%
@Inject() with token
100%
100%
Multiple implementations registered
100%
100%
Implementation selected via config
40%
100%
Singleton scope for stateless providers
100%
100%
REQUEST or ClsModule for request context
80%
100%
No service locator usage
100%
100%
Dedicated module with exports
100%
100%
Constructor injection throughout
100%
100%
Unit test uses Test.createTestingModule
100%
100%
Table of Contents
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.