gRPC, RabbitMQ standards and Monorepo contracts.
Scanned 9/8/2026
Install to Claude Code
npx -y skills add ngxtm/devkit --skill transport --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Transport?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/ngxtm-transport-devkit)More formats (shields.io, HTML) on the badges page.
---
name: NestJS Microservices
description: gRPC, RabbitMQ standards and Monorepo contracts.
metadata:
labels: [nestjs, microservices, grpc, rabbitmq]
triggers:
files: ['main.ts', '**/*.controller.ts']
keywords: [Transport.GRPC, Transport.RMQ, MicroserviceOptions]
---
# Microservices & Transport Standards
## Transport Strategies
- **Synchronous (RPC)**: Use **gRPC** for low-latency, internal service-to-service calls.
- **Why**: 10x faster than REST/JSON, centralized `.proto` contracts.
- **Asynchronous (Events)**: Use **RabbitMQ** or **Kafka** for decoupling domains.
- **Pattern**: Fire-and-forget (`emit()`) for side effects (e.g., "UserCreated" -> "SendEmail").
## Monorepo Architecture
- **Contracts**:
- **Pattern**: Store all DTOs, `.proto` files, and Interfaces in a **Shared Library** (`libs/contracts`).
- **Rule**: Services never import code from other services. They only import from `contracts`.
- **Versioning**: Semantic versioning of messages is mandatory. Never change a field type; add a new field.
## Exception Handling
- **Propagation**: Standard `HttpException` is lost over Rpc/Tcp.
- **Standard**: Use `RpcException` and generic Filters.
```typescript
// Global RPC Filter
@Catch()
export class RpcExceptionFilter implements RpcExceptionFilter<RpcException> {
catch(exception: RpcException, host: ArgumentsHost): Observable<any> {
return throwError(() => exception.getError());
}
}
```
## Serialization
- **Message DTOs**: Use `class-validator` just like HTTP.
- **Config**: Apply `useGlobalPipes(new ValidationPipe({ transform: true }))` in the `MicroserviceOptions` setup, not just HTTP app setup.
Is this your skill, or is something wrong with this listing? . Author removals are honored within 72 hours.
No comments yet. Be the first to comment!