Variables de entorno que lee web.
scripts/docs/env.schema.tsPágina generada desde
scripts/docs/env.schema.ts. No se edita a mano:bun run docs:genla regenera ybun run docs:checkfalla si difiere.
27 variables.
| Variable | Qué controla | Defecto | Marcas | La leen |
|---|---|---|---|---|
DATABASE_PASSWORD | Contraseña de PostgreSQL. Se une a DATABASE_URL al arrancar; en producción la URL no puede llevar contraseña embebida. | — | secreto (_FILE) | catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
DATABASE_URL | URL de PostgreSQL del servicio (usuario del servicio, sin contraseña). | — | obligatoria | catalog-svc, cli, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
DEV | Flag de Vite (import.meta.env.DEV) en la web: activa ayudas de desarrollo (i18n estricto, devtools). La pone el bundler, no el operador. | — | sólo dev | web |
IDENTITY_CSRF_KEY | Clave del token CSRF de las sesiones de navegador (dec-0118). | — | obligatoria, secreto (_FILE) | catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
IDENTITY_PROXY_PROOF | Prueba que el proxy de entrada añade a cada petición hacia identity-svc: sin ella, X-Forwarded-For no cuenta (TS3-P2-01). | — | secreto (_FILE) | catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
IDENTITY_SIGNING_KEY | Clave privada (PEM, Ed25519) con la que identity-svc firma los JWT (EdDSA). | — | obligatoria, secreto (_FILE) | catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
NATS_URL | URL del servidor NATS del bus (spire, dec-0120). | nats://localhost:4222 | — | @styx/bus, catalog-svc, identity-svc, media-daemon (daemon), playback-svc, realtime-svc, sources-svc, web, workers-svc |
NODE_ENV | production activa las reglas de producción: secretos sólo por _FILE, sin contraseñas en URLs, detalle de validación mínimo y NKey obligatoria. | — | — | @styx/bus, @styx/observability, @styx/service-http, catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
OIDC_CLIENT_SECRET | Client secret de identity-svc en el IdP. Opcional: sin él, cliente público con PKCE. | — | secreto (_FILE) | catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
OTEL_INGEST_TOKEN | Token con el que los servicios y el daemon se autentican contra el colector OTel. El daemon lo lee de OTEL_INGEST_TOKEN_FILE; en claro lo rechaza. | — | secreto (_FILE) | @styx/observability, catalog-svc, identity-svc, media-daemon (daemon), playback-svc, realtime-svc, sources-svc, web, workers-svc |
OTEL_SERVICE_NAME | Nombre de servicio en las trazas. | el nombre del servicio (catalog-svc, …) | — | @styx/observability, @styx/service-http, media-daemon (daemon), web |
SPIRE_NATS_NKEY_SEED | Semilla NKey del usuario NATS del servicio (ACL por servicio generada de BUS_ROUTES). Obligatoria en producción. | — | secreto (_FILE) | @styx/bus, catalog-svc, identity-svc, media-daemon (daemon), playback-svc, realtime-svc, sources-svc, web, workers-svc |
SPIRE_SEED | Semilla de la identidad de spire del servicio: firma los sobres del bus. | — | obligatoria, secreto (_FILE) | @styx/bus, catalog-svc, identity-svc, media-daemon (daemon), playback-svc, realtime-svc, sources-svc, web, workers-svc |
STYX_CATALOG_SVC_URL | URL de catalog-svc para el cliente Eden de la web y de @styx/clients. | http://localhost:3000 | — | @styx/clients, web |
STYX_LOG_FORMAT | Formato de los logs: json (una línea JSON por registro con trace_id/span_id, para docker logs) o pretty. Por defecto json con NODE_ENV=production. | — | — | @styx/observability, media-daemon (daemon), web |
STYX_PLAYBACK_SVC_URL | URL de playback-svc para el BFF de la web. | http://localhost:3001 | — | web |
STYX_SCT_SIGNING_KEY | Semilla Ed25519 (base64url) con la que playback-svc firma las SCT. | — | secreto (_FILE) | catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
STYX_WEB_DIRECT_CLIENTS | true si la web recibe a los clientes sin proxy delante. | — | — | web |
STYX_WEB_IMAGE_ORIGINS | Orígenes extra de imágenes que admite la CSP de la web. | — | — | web |
STYX_WEB_MEDIA_ORIGINS | Orígenes extra de medios que admite la CSP de la web. | — | — | web |
STYX_WEB_ORIGINS | Orígenes propios de la web (comprobación de origen del BFF). | — | — | web |
STYX_WEB_PROXY_PROOF | Prueba que el proxy de entrada añade a las peticiones hacia la web. | — | secreto (_FILE) | catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
STYX_WEB_TRUSTED_PROXIES | IPs o CIDR de los proxies de confianza delante de la web. En producción exige STYX_WEB_PROXY_PROOF. | — | — | web |
TELEMETRY_PSEUDONYM_KEY | Clave HMAC con la que la telemetría pseudonimiza los ids de actor (styx.actor.pseudo_id, dec-0135 §D7). Sin ella, ningún id de actor ni su pseudónimo sale en trazas ni logs. | — | secreto (_FILE) | @styx/observability, catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
VALKEY_PASSWORD | Contraseña de Valkey (sesiones y rate-limit de identity-svc). | — | secreto (_FILE) | catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
VALKEY_URL | URL de Valkey (sin contraseña). | — | obligatoria | catalog-svc, identity-svc, playback-svc, realtime-svc, sources-svc, web, workers-svc |
VITE_CATALOG_SVC_URL | URL de catalog-svc para el cliente Eden de la web en el navegador (Vite la incrusta en el build); en el servidor manda STYX_CATALOG_SVC_URL. | http://localhost:3000 | — | @styx/clients, web |