Clientes, procesos, plazos, audiencias, tareas, finanzas y documentos — con un asistente jurídico de IA dentro del sistema.

JurisFlow es un sistema de gestión para bufetes de abogados. No es un prototipo de interfaz: tiene frontend, backend, base de datos MySQL, autenticación y un asistente de IA conectado a un LLM.
Clientes, procesos activos, plazos del período, audiencias, ingresos, gastos y saldo — calculados a partir de los registros reales, no ingresados a mano.
Número CNJ, tribunal, juzgado, jurisdicción, área, fase, posición del cliente, contraparte, valor de la demanda e historial de movimientos.
Borrador de escrito, análisis de jurisprudencia, cálculo de plazos, resumen del estado del proceso, notificación extrajudicial y contrato de honorarios.
| Módulo | Qué hace |
|---|---|
| Panel general | Indicadores de clientes, procesos activos, plazos, audiencias, ingresos, gastos y saldo |
| Clientes | Registro de personas físicas/jurídicas, CPF/CNPJ, contactos, dirección, profesión, estado civil, observaciones y estado |
| Procesos | Número CNJ, tribunal, juzgado, jurisdicción, área jurídica, fase, contraparte, valor de la demanda y estado |
| Estados | Movimientos dentro de los procesos, con indicación de los que son importantes |
| Atenciones | Clasificación inicial de nuevos clientes por WhatsApp, presencialmente, por video, teléfono o correo electrónico |
| Agenda y plazos | Plazos fatales, audiencias, reuniones, peritajes y diligencias |
| Tareas | Gestión interna: prioridad, responsable, plazo y estado |
| Finanzas | Ingresos, gastos, honorarios, costas, vencimientos, pagos y flujo financiero |
| Documentos | Demandas, contestaciones, recursos, poderes, contratos de honorarios, acuerdos, notificaciones |
| Asistente de IA | Generación y análisis de contenido jurídico mediante LLM, con foco en el Derecho brasileño |
El recorrido que sigue un caso dentro del sistema: cada etapa es un módulo y todos comparten el mismo cliente y el mismo proceso.
Cada proceso sigue una secuencia fija, y el panel muestra cuántos están en cada etapa.
Independientemente de la fase, el proceso tiene un estado de cierre, que se usa en los filtros y los indicadores.
Nueve tablas: users, clients, consultations, lawsuits, lawsuit_movements, calendar_events, tasks, financial_transactions, legal_documents.
Un documento apunta al cliente + proceso + abogado. Un movimiento financiero apunta al proceso que lo generó. Nada queda suelto.
Interfaz adaptable con tema claro/oscuro, construida con React 19, Radix UI y Tailwind.
JurisFlow es una aplicación full-stack: ejecuta un servidor Node y necesita un MySQL. No es un sitio estático.
El proyecto usa pnpm (hay un pnpm-lock.yaml versionado) y módulos ESM.
# comprueba las versiones node -v pnpm -v
La base de datos vacía ya sirve: las migraciones de Drizzle crean las nueve tablas.
# crea la base de datos mysql -u root -p -e "CREATE DATABASE jurisflow"
Solo para el Asistente Jurídico. Los otros ocho módulos funcionan sin ella.
# ve a .env BUILT_IN_FORGE_API_URL= BUILT_IN_FORGE_API_KEY=
Cinco pasos. Al final tendrás JurisFlow en el navegador, ya cargado con datos de demostración.
Todo el código —frontend, backend, migrations y pruebas— está en un solo repo.
git clone https://github.com/inematds/jurisflow.git cd jurisflow
Usa pnpm: el lockfile es suyo y hay un patch aplicado en wouter que npm ignora.
pnpm install # instala front + back de una sola vez
Copia el ejemplo y complétalo. DATABASE_URL e JWT_SECRET son obligatorios; las claves del LLM solo si vas a usar el asistente.
cp .env.example .env # .env — lo mínimo para poner en marcha DATABASE_URL=mysql://usuario:senha@localhost:3306/jurisflow JWT_SECRET=um-segredo-aleatorio-e-longo PORT=3000
Drizzle genera las migrations a partir del schema y las aplica en la base de datos. Es el mismo comando en ambas etapas.
pnpm db:push # drizzle-kit generate && drizzle-kit migrate
Un solo proceso sirve a la API y al frontend. Abre la dirección, inicia sesión y haz clic en “Generar datos de ejemplo” en el menú para cargar clientes, procesos, audiencias, tareas, finanzas y documentos.
pnpm dev # http://localhost:3000
pnpm build — compila front y backpnpm start — ejecuta la build de producción
pnpm check — verificación de tipos de TypeScriptpnpm test — suite de Vitest
pnpm format — Prettier en todo, con las reglas del repo.
Base de datos vacía + “Generar datos de ejemplo” = despacho ficticio listo para presentar en minutos.
El asistente está configurado para trabajar con CPC, CPP, CLT, Constitución Federal, Código Civil, CDC y la jurisprudencia del STF, STJ y TST. Tú eliges la operación y describes el caso en texto corrido en portugués.
Se describe el caso; devuelve la estructura del escrito con fundamentos y peticiones.
Investiga el criterio de los tribunales sobre el tema y cómo se aplica al caso.
Cómputo a partir de la notificación, considerando la regla procesal aplicable.
Traduce el despacho o el movimiento procesal a un lenguaje claro para el cliente.
Redacta la notificación a partir del hecho y la pretensión informados.
Prepara el contrato con el objeto, la forma de cobro y las cláusulas habituales.
Borrador de escrito — reclamación laboral
Cliente trabalhou como analista de logística, fazia duas horas extras diárias e foi demitido sem receber aviso prévio.
Análisis de jurisprudencia — consumidor
Jurisprudência do STJ sobre dano moral em caso bancário — Tema 1061.
El asistente todavía no está conectado a una base jurídica de verificación. Se le instruye para citar artículos de ley y jurisprudencia, pero un LLM por sí solo puede producir referencias incorrectas. Trata el resultado como un borrador: toda ley y todo precedente citado deben verificarse en la fuente antes de incorporarse al expediente.
JurisFlow es hoy un MVP funcional de ERP/CRM jurídico con asistente de IA. Lo que sigue es la integración con el mundo exterior y, a futuro, delegar el trabajo repetitivo a agentes.