nestjs-backend-dev
Provides modular architecture and development standards for NestJS projects.
Install
mkdir -p .claude/skills/nestjs-backend-dev && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/15792" && unzip -o skill.zip -d .claude/skills/nestjs-backend-dev && rm skill.zipInstalls to .claude/skills/nestjs-backend-dev
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Expert patterns, scaffolding commands, and best practices for developing the NestJS backend API.Key capabilities
- →Generate new feature modules using NestJS CLI.
- →Enforce dedicated DTOs for every controller endpoint.
- →Implement soft delete patterns for core business data.
- →Inject BullMQ queues for sending jobs.
- →Access configuration via `ConfigService` with strict typing.
How it works
The skill provides scaffolding commands and coding patterns for NestJS, ensuring modularity, data validation, and proper integration with Prisma and BullMQ.
Inputs & outputs
When to use nestjs-backend-dev
- →Scaffolding new nestjs features
- →Implementing database operations
- →Integrating bullmq queues
About this skill
NestJS Backend Development Skill
Use this skill when modifying or extending the apps/backend-api project.
1. Scaffolding Rules
When creating new features, always follow the Modular Monolith structure.
Generating a New Feature Module
Use the NestJS CLI to ensure proper wiring in app.module.ts.
# Example: Creating a 'plans' feature
cd apps/backend-api
npx nest g module modules/plans
npx nest g controller modules/plans --no-spec
npx nest g service modules/plans --no-spec
Note: We disable default spec files (--no-spec) because we prefer writing integration tests or focused unit tests later.
2. DTO & Validation Patterns
Every Controller Endpoint MUST have a dedicated DTO.
Template: Request DTO
import { IsString, IsOptional, IsInt, Min } from 'class-validator';
import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
export class CreateItemDto {
@ApiProperty({ description: 'The name of the item', example: 'My Item' })
@IsString()
name: string;
@ApiPropertyOptional({ description: 'Optional description' })
@IsOptional()
@IsString()
description?: string;
}
3. Prisma & Database Interactions
Accessing the DB
Always inject PrismaService.
constructor(private prisma: PrismaService) {}
Soft Delete Pattern
When "deleting" core business data (users, media), use update to set deletedAt.
async remove(id: number) {
return this.prisma.media.update({
where: { id },
data: { deletedAt: new Date() },
});
}
4. Queue (BullMQ) Integration
When sending jobs to the AI Engine:
- Inject the Queue using
@InjectQueue. - Ensure the payload matches the Python worker's expected schema.
// Constructor
constructor(@InjectQueue('transcription_queue') private transQueue: Queue) {}
// Method
async addToQueue(fileKey: string) {
await this.transQueue.add('transcribe', {
s3Key: fileKey,
// ...other params
});
}
5. Environment & Config
Access config via ConfigService, strict typed.
// BAD
const db = process.env.DATABASE_URL;
// GOOD
const db = this.configService.getOrThrow<string>('DATABASE_URL');
When not to use it
- →When modifying or extending projects other than `apps/backend-api`.
Prerequisites
Limitations
- →Applies only to the `apps/backend-api` project.
- →Every Controller Endpoint MUST have a dedicated DTO.
- →Always inject `PrismaService` for database access.
How it compares
This skill enforces specific architectural patterns and tooling for NestJS backend development, such as DTO validation and soft deletes, which goes beyond basic NestJS usage.
Compared to similar skills
nestjs-backend-dev side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| nestjs-backend-dev (this skill) | 0 | 6mo | Review | Intermediate |
| telegram-bot-builder | 106 | 6mo | Review | Intermediate |
| telegram-mini-app | 62 | 6mo | Review | Advanced |
| stripe-integration | 48 | 2mo | No flags | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
telegram-bot-builder
davila7
Expert in building Telegram bots that solve real problems - from simple automation to complex AI-powered bots. Covers bot architecture, the Telegram Bot API, user experience, monetization strategies, and scaling bots to thousands of users. Use when: telegram bot, bot api, telegram automation, chat bot telegram, tg bot.
telegram-mini-app
davila7
Expert in building Telegram Mini Apps (TWA) - web apps that run inside Telegram with native-like experience. Covers the TON ecosystem, Telegram Web App API, payments, user authentication, and building viral mini apps that monetize. Use when: telegram mini app, TWA, telegram web app, TON app, mini app.
stripe-integration
wshobson
Implement Stripe payment processing for robust, PCI-compliant payment flows including checkout, subscriptions, and webhooks. Use when integrating Stripe payments, building subscription systems, or implementing secure checkout flows.
nodejs-backend-patterns
wshobson
Build production-ready Node.js backend services with Express/Fastify, implementing middleware patterns, error handling, authentication, database integration, and API design best practices. Use when creating Node.js servers, REST APIs, GraphQL backends, or microservices architectures.
hubspot-integration
davila7
Expert patterns for HubSpot CRM integration including OAuth authentication, CRM objects, associations, batch operations, webhooks, and custom objects. Covers Node.js and Python SDKs. Use when: hubspot, hubspot api, hubspot crm, hubspot integration, contacts api.
backend-architect
sickn33
Expert backend architect specializing in scalable API design, microservices architecture, and distributed systems. Masters REST/GraphQL/gRPC APIs, event-driven architectures, service mesh patterns, and modern backend frameworks. Handles service boundary definition, inter-service communication, resilience patterns, and observability. Use PROACTIVELY when creating new backend services or APIs.