Repolode
samchon

samchon/typia

Transformer de TypeScript que compila tipos puros de TypeScript en validadores en tiempo de ejecución, serializadores JSON, codecs de Protocol Buffers y generadores aleatorios.

Alternativa open source a:class-validator

Estrellas
5,962
Forks
233
Issues abiertos
5
Último commit
ayer

¿Qué es?

typia convierte tipos de TypeScript en funciones en tiempo de ejecución durante la compilación. Escribes un tipo como typia.is<T>() o typia.assert<T>() y el transformer analiza T durante la compilación y genera un verificador específico, sin necesidad de definir esquemas por separado ni de usar reflexión en tiempo de ejecución.

La biblioteca cubre varias áreas: validadores en tiempo de ejecución (is, assert, validate), una capa mejorada de JSON con generación de esquemas y funciones más rápidas para stringify y parse, generación de mensajes de Protocol Buffers con encode y decode, y un generador de datos aleatorios. También incluye un módulo de llamadas a funciones de LLM que crea esquemas de herramientas a partir de tipos de clase y valida o parsea la salida del modelo.

Typia requiere la cadena de herramientas ttsc en lugar de tsc, ts-node o tsx sin modificaciones, porque las herramientas estándar no aplican la transformación. La integración con bundlers está disponible mediante @ttsc/unplugin para Vite, Next.js, Webpack, Rollup y esbuild.

Funciones clave

  • 01Genera verificadores de tipos a partir de tipos puros de TypeScript durante la compilación, sin archivos de esquema.
  • 02Ofrece las funciones is, assert y validate para la validación en tiempo de ejecución.
  • 03Genera JSON Schema y ofrece funciones type-safe para stringify y parse.
  • 04Codifica y decodifica mensajes de Protocol Buffers a partir de tipos de TypeScript.
  • 05Crea esquemas de llamadas a funciones para herramientas de LLM y valida la salida del modelo.
  • 06Incluye un generador de datos aleatorios basado en tipos de TypeScript.

Casos de uso

  • Validar cuerpos de solicitudes de API en un backend de TypeScript sin escribir esquemas por separado.
  • Generar serialización JSON rápida para tipos conocidos.
  • Crear definiciones de herramientas para llamadas a funciones de LLM a partir de clases de TypeScript.
  • Generar datos de prueba a partir de tipos existentes.

Inicio rápido

  1. 1

    Instala typia y la cadena de herramientas ttsc/TypeScript

    npm i typia npm i -D ttsc typescript
  2. 2

    Compila el proyecto con ttsc (el tsc estándar no aplicará la transformación)

    npx ttsc
  3. 3

    Ejecuta un script directamente con ttsx

    npx ttsx src/index.ts

Antes de usarlo

  • Requiere la cadena de herramientas ttsc; tsc estándar, ts-node y tsx no pueden aplicar la transformación.
  • Para usarlo con un empaquetador, se necesita el paquete independiente @ttsc/unplugin.

En colecciones

Temas

Preguntas frecuentes

¿Qué es typia?
Transformer de TypeScript que compila tipos puros de TypeScript en validadores en tiempo de ejecución, serializadores JSON, codecs de Protocol Buffers y generadores aleatorios. typia convierte tipos de TypeScript en funciones en tiempo de ejecución durante la compilación. Escribes un tipo como typia.is<T>() o typia.assert<T>() y el transformer analiza T durante la compilación y genera un verificador específico, sin necesidad de definir esquemas por separado ni de usar reflexión en tiempo de ejecución.
¿typia es gratuito? ¿Qué licencia tiene?
typia es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿typia sigue mantenido?
Mantenimiento activo. El último commit de typia fue el 5 nov 2026.
¿Para qué puedo usar typia?
Validar cuerpos de solicitudes de API en un backend de TypeScript sin escribir esquemas por separado. Generar serialización JSON rápida para tipos conocidos. Crear definiciones de herramientas para llamadas a funciones de LLM a partir de clases de TypeScript. Generar datos de prueba a partir de tipos existentes.
¿Cómo se instala typia?
Instala typia y la cadena de herramientas ttsc/TypeScript: npm i typia npm i -D ttsc typescript Compila el proyecto con ttsc (el tsc estándar no aplicará la transformación): npx ttsc Ejecuta un script directamente con ttsx: npx ttsx src/index.ts
¿Dónde consigo typia?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/samchon/typia

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados