UNPKG

@schemifyjs/types

Version:

Tipos compartidos entre los paquetes CLI y Core de SchemifyJS

120 lines (81 loc) β€’ 2.34 kB
# @schemify/types > πŸ“¦ Shared TypeScript contracts and interfaces for the [Schemify](https://github.com/Schemify/schemify-microservice) ecosystem. [English](#english) | [EspaΓ±ol](#espaΓ±ol) --- ## English ### πŸ“š Overview `@schemify/types` is the canonical source of shared types and contracts used across all Schemify-based microservices. It ensures strong typing, interoperability, and consistency between: - gRPC DTOs - Kafka messages - Domain events - Common utility types (e.g. pagination, errors) --- ### πŸ“¦ Installation ```bash npm install @schemify/types ```` --- ### 🧠 Usage Import types in your microservices or libraries: ```ts import { CreateExampleDto, ExampleEvent } from '@schemify/types'; ``` All types are generated or curated to match the shared protocol contracts defined in the repo [`schemify-microservice`](https://github.com/Schemify/schemify-microservice). --- ### πŸ”§ Structure ``` @schemify/types β”œβ”€β”€ grpc/ β”‚ β”œβ”€β”€ example.proto.ts β”‚ └── ... β”œβ”€β”€ kafka/ β”‚ β”œβ”€β”€ events/ β”‚ β”œβ”€β”€ topics.ts β”‚ └── ... β”œβ”€β”€ common/ β”‚ β”œβ”€β”€ pagination.ts β”‚ β”œβ”€β”€ error.ts β”‚ └── ... └── index.ts ``` --- ## EspaΓ±ol ### πŸ“š DescripciΓ³n `@schemify/types` es el paquete central de tipos y contratos compartidos entre todos los microservicios basados en Schemify. Asegura un tipado fuerte, interoperabilidad y coherencia entre: * DTOs para gRPC * Mensajes Kafka * Eventos de dominio * Tipos comunes (paginaciΓ³n, errores, etc.) --- ### πŸ“¦ InstalaciΓ³n ```bash npm install @schemify/types ``` --- ### 🧠 Uso Importa los tipos en tus microservicios o librerΓ­as: ```ts import { CreateExampleDto, ExampleEvent } from '@schemify/types'; ``` Los tipos estΓ‘n alineados con los contratos definidos en el repositorio [`schemify-microservice`](https://github.com/Schemify/schemify-microservice). --- ### πŸ”§ Estructura ``` @schemify/types β”œβ”€β”€ grpc/ β”‚ β”œβ”€β”€ example.proto.ts β”‚ └── ... β”œβ”€β”€ kafka/ β”‚ β”œβ”€β”€ events/ β”‚ β”œβ”€β”€ topics.ts β”‚ └── ... β”œβ”€β”€ common/ β”‚ β”œβ”€β”€ pagination.ts β”‚ β”œβ”€β”€ error.ts β”‚ └── ... └── index.ts ``` --- > βœ… Ideal for monorepos, package sharing, and scalable microservice boundaries.