Environment variables
Build and CI
| Variable | Example | Required | Safe to expose? | Purpose | Failure behavior |
|---|---|---|---|---|---|
LINGUANA_PROJECT_TOKEN | lna_... | Remote build work | No | Manifest and paid-work authorization | Upload/translation returns authorization failure |
LINGUANA_API_URL | https://api.example.com | Remote compiler and SSR | Server configuration only | API origin for builds and server catalog reads | Registration or catalog load fails |
LINGUANA_UPLOAD | true | No | Build config, not secret | Enables manifest upload | false keeps extraction local |
LINGUANA_TRANSLATE | false | No | Build config, not secret | Disables translation while retaining upload | Omitted/true may translate when token config enables it |
GIT_COMMIT_SHA | Git revision | No | Yes | Records source revision in the manifest | Manifest omits source revision |
Browser runtime
| Variable | Example | Required | Safe to expose? | Purpose |
|---|---|---|---|---|
VITE_LINGUANA_API_URL | https://api.example.com | Remote browser catalogs | Yes | Browser-reachable catalog API |
VITE_LINGUANA_PUBLISHABLE_KEY | pk_... | Remote browser catalogs | Yes | Read-only catalog authorization |
Only intentionally public values should use the VITE_ prefix. Never create VITE_LINGUANA_PROJECT_TOKEN.
Translation provider
| Variable | Example | Required | Safe to expose? | Purpose |
|---|---|---|---|---|
OPENROUTER_API_KEY | Provider secret | OpenRouter mode | No | Paid translation provider authorization |
OPENROUTER_MODEL | qwen/qwen3.8-flash | Provider-dependent | Server config only | Selects the provider model |
TRANSLATION_PROVIDER | openrouter | Server translation | Server config only | Selects deterministic or live provider adapter |
Documentation deployment
| Variable | Example | Required | Safe to expose? | Purpose |
|---|---|---|---|---|
DOCS_BASE_URL | https://docs.example.com | Hosted metadata | Yes | Canonical docs and llms.txt origin |
DOCS_PORT | 3004 | Deployment-dependent | Yes | Docs service port |
VITE_DOCS_URL | https://docs.example.com | Landing integration | Yes | Browser-visible docs destination |
Server and browser origins
The verified example uses LINGUANA_API_URL on the server and VITE_LINGUANA_API_URL in the browser because container networking and public browser origins may differ. Both must resolve the same API and project catalog scope.
See also
Classify build, runtime, provider, and documentation settings by exposure and purpose.
Last updated October 3, 2026
Did this page get you to a working result?