Estado

Privado

HaaS (Herramienta de Automatización de Servicios) es una plataforma de automatización de procesos orientada a organizaciones legales. Combina Go en el backend con Next.js en el frontend para ofrecer flujos de trabajo configurables, generación de documentos PDF, firmas digitales y presentaciones ante organismos regulatorios, todo con aislamiento de datos a nivel de base de datos por inquilino (Row-Level Security en PostgreSQL).

Características principales

  • Gestión de flujos de trabajo (Flows): definición visual de procesos con pasos ordenados —ingesta, extracción, generación, revisión, firma, envío— y versionado de cada flujo.
  • Generación de documentos: plantillas almacenadas en S3/MinIO con sustitución de variables; renderizado a PDF mediante Gotenberg.
  • Firmas digitales: integración en el ciclo de vida del flujo de trabajo.
  • Integración con IA: prompts LLM configurables por paso (extracción, generación, anotación, validación) usando Claude como modelo por defecto.
  • Multi-tenant con RLS: cada organización opera en su silo de datos garantizado a nivel de PostgreSQL.
  • Roles y permisos granulares: owner, admin, worker y client con permisos detallados por departamento.
  • Modelos de precios flexibles: fijo, gratuito, comisión por éxito (% del resultado) o híbrido.

Stack tecnológico

  • Backend: Go 1.23, Chi router, pgx v5, Temporal (workflows)
  • Frontend: Next.js 15, React 19, Zustand, Tailwind CSS, Zod
  • Base de datos: PostgreSQL 16 con Row-Level Security
  • Almacenamiento: MinIO (compatible con S3)
  • PDF: Gotenberg
  • Caché: Redis 7

Arquitectura multi-tenant

Cada petición HTTP extrae el tenant_id del JWT y aplica un middleware de RLS que configura la conexión de base de datos con SET LOCAL app.current_tenant, garantizando que todas las consultas estén aisladas por organización sin necesidad de filtros manuales.

Puesta en marcha

git clone https://github.com/sergiocantero/industry.git
cd industry
make setup
cp .env.example .env
make dev          # Inicia PostgreSQL, Redis, Temporal, MinIO, Gotenberg
make db-migrate-up
make dev-api      # http://localhost:8000
make dev-frontend # http://localhost:3000

Compartir