Características
Más allá de la declaración de tablas estáticas, el paquete @lynx/models alberga todo un ecosistema de herramientas para facilitar la vida del desarrollador, acelerar la validación y automatizar el poblado de datos.
Herramientas de Administración de Datos
Sección titulada «Herramientas de Administración de Datos»Para interactuar de forma táctica con las bases de datos de desarrollo y producción, utilizamos el catálogo oficial de utilidades de Drizzle.
1. Drizzle Kit (Control de Esquemas)
Sección titulada «1. Drizzle Kit (Control de Esquemas)»drizzle-kit es el motor subyacente responsable de sincronizar el estado de nuestro código en TypeScript con el mundo SQL.
- Generación de Migraciones: Genera archivos
.sqllegibles antes de impactar el motor. - Push Directo: Durante el desarrollo local rápido, permite sobreescribir los esquemas directamente sin crear historial (
drizzle-kit push). - Drizzle Studio: Proporciona un visor visual para inspeccionar los datos contenidos de la base de datos sin necesidad de conectarse usando clientes tradicionales como DBeaver o PgAdmin.
2. Drizzle Seed (Poblado de Datos)
Sección titulada «2. Drizzle Seed (Poblado de Datos)»El manejo de entornos de prueba vacíos es improductivo. Para combatir esto, integramos drizzle-seed.
- Población Determinista: Genera de forma automatizada y estructurada cientos o miles de filas en relaciones complejas usando semilleros predecibles (seeds).
- Consistencia Cíclica: Maneja automáticamente dependencias de claves foráneas entre tablas durante la creación de datos de ejemplo.
3. Drizzle Lab (Visualización y Diagnóstico)
Sección titulada «3. Drizzle Lab (Visualización y Diagnóstico)»Para asegurar la calidad arquitectónica cuando el volumen de relaciones crece:
- Introspección Rápida: Habilidad para realizar un pull de esquemas existentes.
- Visualización Visual: Genera mapas relacionales y visores directos sobre las restricciones.
Configuración de Testing Relacional
Sección titulada «Configuración de Testing Relacional»Las pruebas en este paquete se ejecutan mediante archivos acoplados:
/src schema.ts schema.test.ts // Validaciones locales puras para lógica custom seeders.ts# Ejecuta suites estándarpnpm vitest run
# Evalúa la cobertura totalpnpm vitest run --coverage