Proyecto

Bank Core — núcleo híbrido (NestJS ↔ COBOL)

Es una demostración de cómo combinar canales modernos (API NestJS y SPA React) con procesos tipo mainframe: el programa COBOL lee y escribe archivos maestro (CUENTAS.DAT, TRANS.DAT, REPORTE.DAT) en lugar de tocar la base relacional en cada movimiento.

Sirve para aprender y mostrar en portafolio la integración HTTP ↔ archivos ↔ batch GnuCOBOL: transferencias con validación vía lote, historial en SQLite, exportaciones CSV, carga por lotes, gráficos y un cierre diario simulado. La autenticación corre con Better Auth (cookies seguras) y el manual unificado describe arquitectura, despliegue y persistencia.

No es un core productivo: no sustituye cumplimiento regulatorio, HA ni seguridad de un entorno real; la documentación PDF recoge el alcance honesto y los pasos para desarrolladores (local, Docker, variables y build).

Ficha técnica

  • COBOL (GnuCOBOL, BANKBATCH.cbl): reglas del lote sobre CUENTAS.DAT, TRANS.DAT y REPORTE.DAT; el core contable “clásico” del demo
  • JCL (TRANJOB.jcl): JOB de referencia en mainframe/; en local run-job.sh compila y ejecuta el programa como sustituto del paso de Job
  • Backend NestJS: validación HTTP, orquestación del batch (escritura TRANS.DAT → run-job.sh → lectura REPORTE.DAT), TypeORM sobre SQLite
  • Better Auth en /api/auth con auth.sqlite separado del ledger de negocio
  • Frontend React + Vite + Tailwind: proxy en desarrollo, Recharts, tablero, CSV y cierre diario simulado
  • Docker Compose para API con toolchain COBOL y hot reload en desarrollo
  • Documentación unificada en PDF/HTML generada desde Markdown en el repo