Referencia de configuración
EntityFlow se configura por completo mediante variables de entorno. Las variables booleanas aceptan 1, true, yes u on (sin distinguir mayúsculas y minúsculas); cualquier otro valor se considera falso.
Despliegue y licencia
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_DEPLOYMENT | self-host | Modo de despliegue: saas o self-host. |
EF_LICENSE_KEY | — | Clave de licencia firmada sin conexión que desbloquea los complementos para instancias autoalojadas. La emite SYILAB; cópiala desde Licencias en tu EntityFlow Hub. |
EF_LICENSE_CHECKIN_ENABLED | false | Habilita el registro de licencia en línea opcional. |
EntityFlow Hub
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_HUB_URL | https://hub.entityflow.dev | Adónde envían a las personas el menú de cuenta (Gestionar la cuenta) y los avisos para mejorar el plan: tu EntityFlow Hub. |
EF_OFFICE_KEY | — | Opcional, 24 caracteres o más. Habilita la API de plataforma que EntityFlow Office y EntityFlow Hub usan para administrar esta instancia. Si no está definida, esa API no existe (responde 404). |
Base de datos
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_DIAGRAM_DB_URL | — (obligatorio) | Cadena de conexión para el plano de diagramas. |
DATABASE_URL | — | Alias de EF_DIAGRAM_DB_URL. |
EF_CONTROL_DB_URL | — | Plano de control de PostgreSQL; obligatorio cuando la base de datos de diagramas no es Postgres. |
EF_DB_POOL_MAX | 10 | Número máximo de conexiones del pool de la base de datos. |
EF_DB_MIGRATE_ON_BOOT | true | Ejecuta las migraciones automáticamente al iniciar. |
Red
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_PORT | 8787 | Puerto HTTP (tRPC + REST). |
EF_WS_PORT | 8788 | Puerto websocket de Hocuspocus. |
EF_AUTH_BASE_URL | http://localhost:8787 | URL base pública utilizada para las devoluciones de llamada de autenticación. |
EF_WEB_ORIGIN | http://localhost:5173 | Origen web permitido (CORS). |
Autenticación y multiinquilino
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_AUTH_SECRET | — | Obligatorio en producción; secreto de sesión de 32 caracteres o más. |
EF_AUTH_RP_ID | localhost | ID de parte de confianza para passkeys/WebAuthn. |
EF_PG_RLS | false | Habilita la seguridad a nivel de fila de PostgreSQL. |
Correo electrónico
El inicio de sesión es sin contraseña: EntityFlow envía por correo un código de un solo uso a quien inicia sesión. Por tanto, una instancia autoalojada necesita un transporte de correo electrónico antes de que nadie pueda iniciar sesión.
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_MAIL_PROVIDER | — | smtp, resend, mailjet o log. Si no está definida, se usa el primer transporte configurado. |
EF_MAIL_FROM | — | Dirección del remitente. |
EF_MAIL_FROM_NAME | — | Nombre visible del remitente. |
EF_SMTP_HOST | — | Host del servidor SMTP. |
EF_SMTP_PORT | 587 | Puerto del servidor SMTP. |
EF_SMTP_USER | — | Nombre de usuario SMTP. |
EF_SMTP_PASSWORD | — | Contraseña SMTP. |
EF_SMTP_SECURE | false | true para TLS implícito (puerto 465); en caso contrario, se usa STARTTLS. |
EF_RESEND_API_KEY | — | Clave de API de Resend. |
EF_MAILJET_API_KEY | — | Clave de API de Mailjet. |
EF_MAILJET_SECRET_KEY | — | Clave secreta de Mailjet. |
export EF_MAIL_PROVIDER=smtp
export EF_MAIL_FROM="entityflow@acme.com"
export EF_MAIL_FROM_NAME="EntityFlow"
export EF_SMTP_HOST="smtp.acme.com"
export EF_SMTP_PORT=587
export EF_SMTP_USER="entityflow"
export EF_SMTP_PASSWORD="<smtp-password>"
:::info Una configuración guardada tiene prioridad Una configuración de correo electrónico guardada en la base de datos (por EntityFlow Office) tiene prioridad sobre estas variables. :::
:::warning log es solo para desarrollo
Con EF_MAIL_PROVIDER=log no se envía nada: los correos electrónicos — incluidos los códigos de inicio de sesión — se escriben en el registro del servidor. Úsalo solo en una máquina de desarrollo.
:::
Tiempo real
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_COLLAB_DEBOUNCE_MS | 2000 | Ventana de anti-rebote para persistir las actualizaciones CRDT. |
EF_COLLAB_MAX_DEBOUNCE_MS | 10000 | Anti-rebote máximo antes de un vaciado forzado. |
EF_COLLAB_ALLOW_ANONYMOUS | false | Permite la colaboración sin autenticación (solo demostración). |
EF_REALTIME_REDIS_ENABLED | false | Habilita la difusión con Redis para varios nodos. |
EF_REALTIME_REDIS_URL | — | Cadena de conexión de Redis. |
EF_REALTIME_REDIS_PREFIX | ef | Prefijo de clave para los canales de Redis. |
Observabilidad
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_OTEL_ENABLED | false | Habilita el rastreo con OpenTelemetry. |
EF_OTEL_EXPORTER_OTLP_ENDPOINT | — | Punto de conexión del recolector OTLP. |
EF_OTEL_SERVICE_NAME | ef-server | Nombre del servicio reportado en los rastreos. |
EF_SENTRY_DSN | — | DSN de Sentry para el reporte de errores. |
EF_LOG_LEVEL | info | Nivel de registro (fatal–trace, o silent). |
Ciclo de vida y webhooks
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_TRIAL_DAYS | 14 | Duración de la prueba en días. |
EF_RETENTION_DAYS | 30 | Ventana de retención para los datos eliminados de forma reversible. |
EF_SUSPENDED_READONLY | true | Los inquilinos suspendidos pasan a ser de solo lectura en lugar de quedar bloqueados. |
EF_WEBHOOK_ALLOW_HTTP | false | Permite destinos de webhook con HTTP en texto plano. |
Importador
| Variable | Valor predeterminado | Propósito |
|---|---|---|
EF_DB_CONNECT_BLOCK_PRIVATE | false | Bloquea la conexión del importador a hosts privados/de bucle invertido. |
EF_CONNECTION_ENC_KEY | — | Clave AES-256 en Base64 que habilita la bóveda de conexiones recordadas. |
En producción, EF_AUTH_SECRET debe estar definido, y debe configurarse un transporte de correo electrónico para que las personas puedan iniciar sesión.
Consulta Usa tu propia base de datos y Usa tu propio proveedor de identidad para la configuración específica del motor y de la autenticación.