Skip to content
Back to skills

Nestjs Transport

ASecurity

Configure gRPC, RabbitMQ, and monorepo contract patterns for NestJS microservices. Use when setting up gRPC service-to-service calls, RabbitMQ event-driven messaging, shared contract libraries, or microservice exception handling in NestJS.

  • 2 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 6, 2026
ai-agentsgit

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned September 6, 2026

npx -y skills add FilippoDeSilva/skills --skill nestjs-transport --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Nestjs Transport?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Nestjs Transport
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/filippodesilva-nestjs-transport/badge)](https://www.skillsdirectory.com/skills/filippodesilva-nestjs-transport)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: nestjs-transport
description: Configure gRPC, RabbitMQ, and monorepo contract patterns for NestJS microservices. Use when setting up gRPC service-to-service calls, RabbitMQ event-driven messaging, shared contract libraries, or microservice exception handling in NestJS.
license: MIT
version: 1.0.0
author: "[Filippo De Silva](https://github.com/FilippoDeSilva)"
tags:
  - nestjs
  - transport
  - grpc
  - rabbitmq
  - microservices
  - monorepo
  - contracts
metadata:
  triggers:
    files:
    - 'main.ts'
    - '**/*.controller.ts'
    - 'Transport.GRPC'
    - 'Transport.RMQ'
    keywords:
    - MicroserviceOptions
---
# Microservices & Transport Standards

## **Priority: P0 (FOUNDATIONAL)**


- **Synchronous (RPC)**: Use **gRPC** for low-latency, internal service-to-service calls (10x faster than REST/JSON).
- **Asynchronous (Events)**: Use **RabbitMQ** or **Kafka** for decoupling domains via fire-and-forget (`emit()`).

## gRPC Setup

See [implementation examples](references/example.md)

## RabbitMQ Setup

See [implementation examples](references/example.md)

## Monorepo Contracts

- Store all DTOs, `.proto` files, and Interfaces in `libs/contracts`.
- Services never import from sibling services — only from `contracts`.
- Semantic versioning of messages mandatory. Never change field type; add new field.

## Exception Handling

Standard `HttpException` lost over RPC/TCP. Use `RpcException` with global filters:

See [implementation examples](references/example.md)

## Serialization

- Apply `useGlobalPipes(new ValidationPipe({ transform: true }))` in `MicroserviceOptions` setup, not HTTP.

## Anti-Patterns

- **No cross-service imports**: Services must import only from `libs/contracts`, never from sibling services.
- **No HttpException in RPC**: Use `RpcException` with global `RpcExceptionFilter` for microservice errors.
- **No unversioned message schema**: Add new fields; never change existing field types — consumers will break.

Files in this skill

  • SKILL.md1.9 KB
  • evals/evals.json1.9 KB
  • references/example.md928 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in ai-agents →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.