Lets a deployment set what the app can't know from the browser: the style a visitor sees before choosing one, whether the server sends email, without which the digest settings do nothing, and which ways federated sign-in goes.

The server writes GERBEUR_DEFAULT_STYLE into index.html's default-style <meta> tag, whether GERBEUR_SMTPS_URL is set into email-enabled, and FEDERATION (api/config.ts) into federation-incoming and federation-outgoing (api/lib/index-html.ts, and the Vite config in development). index.html's inline theme script reads the first one too.

Variables

v
DEFAULT_STYLE: StyleName

The instance's style, which applies until a visitor or their account picks one. A missing or unknown value means BASE_STYLE. ThemeProvider reads it.

v
EMAIL_ENABLED: boolean

Whether the server sends email. Without it the settings page shows the digest switches disabled, with a note why.

v
FEDERATION_INCOMING: boolean

Whether users of other instances sign in here. Without it the login and register pages offer no other instance.

v
FEDERATION_OUTGOING: boolean

Whether this instance's users sign in to other instances. Without it the settings page doesn't list the instances they signed in to, since none remain.