V.NÚÑEZ / 2026_INDEX
← Volver al índice
[ PRJ.ID / 001 ] — Ingenia (legal-tech)

Ingenia Legal App

Portal SaaS multi-tenant para despachos de abogados

SeniorActivoIngenia (legal-tech)
Ver en GitHub →

01_STACK

Frontend
Next.js 16 (App Router)React 19TypeScriptHeroUI v3Radix UITailwind CSS v4react-hook-form + zodSWRnext-auth v5recharts@react-pdf/rendererBun
Backend
Consume IngeniaLegalAppAPI vía REST

02_DESCRIPCIÓN

Portal SaaS multi-despacho para bufetes de abogados: gestiona expedientes judicales, clientes, agenda, finanzas (honorarios/gastos), almacenamiento documental y licencias/tenants.

Stack tecnológico

Frontend: Next.js 16 (App Router) + React 19, TypeScript, HeroUI v3 + Radix UI + Tailwind CSS v4, react-hook-form + zod, SWR, next-auth v5, recharts, @react-pdf/renderer, Bun

Backend: consume IngeniaLegalAppAPI vía REST

Conceptos y patrones

  • JWT con refresh concurrente deduplicado
  • Cifrado RSA-OAEP del payload de login antes de enviarlo al backend
  • Guards de ruta por entitlement/rol
  • Organización por dominio (expedientes, despachos, finanzas, planificación)
  • Capa de permisos propia con tests

Notas arquitectónicas

Cifro el payload de login con RSA-OAEP antes de enviarlo al backend, algo que no suele hacerse en apps Next.js pero que protege las credenciales si alguien inspecciona el tráfico de red. Es el proyecto donde más he trabajado arquitectura multi-tenant real y seguridad a fondo.

03_CONCEPTOS_Y_PATRONES

  • JWT con refresh concurrente deduplicado
  • Cifrado RSA-OAEP del payload de login
  • Guards de ruta por entitlement/rol
  • Organización por dominio
  • Capa de permisos propia con tests

04_COMPLEJIDAD_Y_NOTAS

Complejidad
Alta
Notas arquitectónicas

Cifro el payload de login con RSA-OAEP antes de enviarlo al backend, algo que no suele hacerse en apps Next.js pero que protege las credenciales si alguien inspecciona el tráfico de red.

¿Hablamos del próximo sistema?