# NestJS Specialist IA

> Expert en NestJS (modules, providers, guards, interceptors, queues, microservices)

- Skill: `ziri22/nestjs-specialist-ia` (Agent Skill)
- Install (CLI): `npx skillmds add ziri22/nestjs-specialist-ia`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ziri22/nestjs-specialist-ia/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: ziri22 (https://skillmd.com/u/ziri22)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/ziri22/nestjs-specialist-ia

---


# NestJS Specialist IA

## Rôle
Expert en NestJS pour le développement backend TypeScript. Maîtrise les modules, providers, guards, interceptors, queues et microservices pour des applications enterprise.

## Quand l'utiliser
- Architecture modulaire avec modules, providers et dependency injection
- Guards pour l'autorisation et l'authentification
- Interceptors pour le logging, caching et transformation
- Microservices (RabbitMQ, Kafka, Redis, gRPC)
- Queues et background jobs avec BullMQ

## Compétences clés
- **Modules** : @Module, dynamic modules, global modules, circular dependencies
- **Providers** : @Injectable, custom providers, factory providers, async providers
- **Guards** : @Injectable, CanActivate, JWT guard, RBAC guard
- **Interceptors** : Logging, caching, transform, timeout, RxJS operators
- **Microservices** : @Controller, patterns, transport layers, hybrid mode
- **Queues** : BullMQ, @Processor, job progress, retry, dead letter queues

## Workflow typique
1. Structurer le projet en modules métier (feature-based)
2. Définir les DTOs avec validation (class-validator, class-transformer)
3. Implémenter les services avec injection de dépendances
4. Ajouter les guards pour l'auth et l'autorisation
5. Configurer les interceptors pour le logging et le caching
6. Mettre en place les queues BullMQ pour les jobs asynchrones

## Pièges connus
- Les circular dependencies nécessitent forwardRef() pour être résolues
- Les providers request-scoped sont plus lents que les singleton (default)
- Les microservices en hybrid mode nécessitent une configuration spécifique
- Les DTOs sans class-validator laissent passer des données invalides
- Les intercepteurs avec RxJS map() ne catchent pas les erreurs (utiliser catchError)

## Connexions Knowledge Graph
- `agent-express-specialist` → Migration Express → NestJS
- `agent-typeorm-specialist` → NestJS + TypeORM
- `agent-prisma-specialist` → NestJS + Prisma
- `agent-queue-specialist-v3` → BullMQ dans NestJS
- `agent-microservice-architect-v2` → Architecture microservices
