packages/skills/skills/nestjs-best-practices/SKILL.md
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.
npx skillsauth add mediar-ai/skillhubz nestjs-best-practicesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Comprehensive best practices guide for NestJS applications. Contains 40 rules across 10 categories, prioritized by impact to guide automated refactoring and code generation.
Reference these guidelines when:
| Priority | Category | Impact | Prefix |
|----------|----------|--------|--------|
| 1 | Architecture | CRITICAL | arch- |
| 2 | Dependency Injection | CRITICAL | di- |
| 3 | Error Handling | HIGH | error- |
| 4 | Security | HIGH | security- |
| 5 | Performance | HIGH | perf- |
| 6 | Testing | MEDIUM-HIGH | test- |
| 7 | Database & ORM | MEDIUM-HIGH | db- |
| 8 | API Design | MEDIUM | api- |
| 9 | Microservices | MEDIUM | micro- |
| 10 | DevOps & Deployment | LOW-MEDIUM | devops- |
arch-avoid-circular-deps - Avoid circular module dependenciesarch-feature-modules - Organize by feature, not technical layerarch-module-sharing - Proper module exports/imports, avoid duplicate providersarch-single-responsibility - Focused services over "god services"arch-use-repository-pattern - Abstract database logic for testabilityarch-use-events - Event-driven architecture for decouplingdi-avoid-service-locator - Avoid service locator anti-patterndi-interface-segregation - Interface Segregation Principle (ISP)di-liskov-substitution - Liskov Substitution Principle (LSP)di-prefer-constructor-injection - Constructor over property injectiondi-scope-awareness - Understand singleton/request/transient scopesdi-use-interfaces-tokens - Use injection tokens for interfaceserror-use-exception-filters - Centralized exception handlingerror-throw-http-exceptions - Use NestJS HTTP exceptionserror-handle-async-errors - Handle async errors properlysecurity-auth-jwt - Secure JWT authenticationsecurity-validate-all-input - Validate with class-validatorsecurity-use-guards - Authentication and authorization guardssecurity-sanitize-output - Prevent XSS attackssecurity-rate-limiting - Implement rate limitingperf-async-hooks - Proper async lifecycle hooksperf-use-caching - Implement caching strategiesperf-optimize-database - Optimize database queriesperf-lazy-loading - Lazy load modules for faster startuptest-use-testing-module - Use NestJS testing utilitiestest-e2e-supertest - E2E testing with Supertesttest-mock-external-services - Mock external dependenciesdb-use-transactions - Transaction managementdb-avoid-n-plus-one - Avoid N+1 query problemsdb-use-migrations - Use migrations for schema changesapi-use-dto-serialization - DTO and response serializationapi-use-interceptors - Cross-cutting concernsapi-versioning - API versioning strategiesapi-use-pipes - Input transformation with pipesmicro-use-patterns - Message and event patternsmicro-use-health-checks - Health checks for orchestrationmicro-use-queues - Background job processingdevops-use-config-module - Environment configurationdevops-use-logging - Structured loggingdevops-graceful-shutdown - Zero-downtime deploymentsRead individual rule files for detailed explanations and code examples:
rules/arch-avoid-circular-deps.md
rules/security-validate-all-input.md
rules/_sections.md
Each rule file contains:
For the complete guide with all rules expanded: AGENTS.md
tools
Design web-like user interfaces in the terminal and inside tmux with a cell-grid Canvas, CSS-like box model, flexbox/grid layout, and 15 reusable widgets such as Panel, Table, Card, ProgressBar, Meter, Tabs, Tree, Badge, Banner, and a braille line chart. Use when an agent needs a dashboard, panel, table, status page, TUI layout, tmux dashboard, screenshot-driven CLI/TUI replica, ANSI frame, truecolor render, pyte PNG screenshot smoke test, wide-character alignment, or a new terminal widget.
tools
Drive interactive terminal (TUI) programs — CLIs, REPLs, installers, menu apps, agent CLIs, and editors like vim — through a PTY, reading semantic screen snapshots. A pattern library classifies a screen (REPL, menu, pager, fzf search, confirm dialog, form, spinner, wizard) and drives it with a ready recipe. Use when a program expects a live terminal (arrow-key menus, prompts, spinners, password fields, curses UIs), or when a piped command hangs or prints nothing.
tools
Design and render terminal/CMD visual effects and ASCII art from a one-line request via the pluggable `fx` engine (18 hot-swappable, themeable effects plus scripted shows). Effects include donut, matrix rain, plasma, fire, a spinning 3D ball, Game of Life, wireframe cube, 3D text banners, rainbow/lolcat gradient text, starfield, tunnel, fireworks, image-to-ASCII, and more. Use when the request is for a terminal animation, ANSI/CLI art, or a new console effect. Pure Python stdlib; truecolor.
tools
# X Twitter Scraper Use Xquik for X/Twitter tweet search, user lookup, profile tweets, follower export, media download, monitors, webhooks, posting workflows, and MCP-backed API exploration. ## Prerequisites - A Xquik API key in `XQUIK_API_KEY`. - Internet access to `https://xquik.com/api/v1`, `https://xquik.com/mcp`, and `https://docs.xquik.com`. - A clear user request that identifies the target tweets, users, accounts, keywords, media, monitor, webhook, or write action. ## Source Truth -