Arquitectura Lógica
This content is not available in your language yet.
La arquitectura de este paquete está diseñada para asegurar la consistencia y eliminar problemas de tipado entre la aplicación y el motor PostgreSQL. Todo esquema creado aquí dicta las reglas en todo el ecosistema.
Flujo Lógico de Modelado
Sección titulada «Flujo Lógico de Modelado»La creación y propagación de un modelo en Lynx sigue este patrón determinista:
graph TD
A[Esquema de Drizzle] --> B(SQL Migrations)
A --> C(Tipos de TypeScript)
A --> D(Esquemas de Zod / DTOs)
C --> E[Backend & Frontend]
D --> E
B --> F[(PostgreSQL)]
style A fill:#000000,stroke:#333,stroke-width:2px,color:#fff
Convenciones de Definición
Sección titulada «Convenciones de Definición»A la hora de estructurar nuevos modelos, aplicamos políticas estrictas:
- Nomenclatura: Nombres de tablas en minúsculas y formato snake_case.
- Integración con Better Auth: El paquete incluye esquemas nativos y ampliables requeridos por el framework de autenticación (ej.
users,sessions,accounts).
Ciclo de Creación de un Modelo
Sección titulada «Ciclo de Creación de un Modelo»- Definir el Esquema: Crear la declaración del modelo usando la sintaxis de Drizzle ORM (tipos de columnas, relaciones lógicas, índices).
- Generar DTOs: Utilizar herramientas complementarias (como
drizzle-zod) para crear de manera automatizada los esquemas de Zod (inserción y selección). - Exportar la Interfaz: Hacer que el modelo, los tipos deducidos y los validadores de Zod estén disponibles a través del
index.tsdel paquete. - Migración Automática: Ejecutar las rutinas de
drizzle-kitpara generar el SQL equivalente y volcarlo en la carpeta de migraciones.
Pruebas de Contratos (Vitest)
Sección titulada «Pruebas de Contratos (Vitest)»Dado que este paquete carece de estado dinámico y lógica de red, sus pruebas son directas e instrumentales.
| Componente | Qué verificamos | | :------------------ | :-------------------------------------------------------------------------------------------------------------- | | Esquemas Zod | Aseguramos que la sintaxis de validación atrape casos extremos no lógicos. | | Funciones Puras | Lógica de normalización o constructores de sentencias parciales de SQL. | | DTOs Generados | Confirmamos que la inferencia de tipos entre Drizzle y TypeScript se mantienen intactos ante refactorizaciones. |
Se exige mantener los estándares utilizando los comandos locales de validación: vitest run para evaluación y vitest run --coverage para métricas analíticas.