orbit-client-docs/docs/branding.md
Jean 6dfb7631b2
docs: reflect the config, branding, i18n and plugin-API changes
- config.md: add server.guestIdent, report.service, defaults.lang; correct the
  turnstile.enabled / features.* descriptions; add a Languages section; complete example.
- branding.md: branding.name/icon now drive the favicon, notifications, PWA and push;
  fix the feature-flag notes; add a Languages note.
- plugins.md: document orbit.config() and orbit.i18n (language/t/pick) + a Localization
  section; note they arrived in apiVersion 4.
- overview.md: add the 10-language support bullet.
2026-07-04 01:05:11 +00:00

2 KiB

Section: Configuration Order: 110

Branding & themes

Everything that ties Orbit to a particular network or brand lives in config.json under branding and defaults — no code changes, no rebuild.

Rebrand

{
  "branding": {
    "name": "ExampleChat",
    "icon": "https://example.org/logo.svg",
    "url": "https://example.org",
    "tagline": "Chat with",
    "taglineEm": "everyone.",
    "subtitle": "Public rooms, private messages, no signup required."
  }
}

branding.name and branding.icon reach everywhere the app identifies itself: the connect screen, the browser tab title + favicon, desktop and Web Push notifications, the PWA install prompt (name + description, localized), the iOS home-screen title, the network icon, and the CTCP VERSION/SOURCE replies. Point icon at your own logo URL and the tab icon follows.

Themes

Orbit ships four themes:

  • light — clean, default.
  • dark — easy on the eyes.
  • yomirc — a retro mIRC / Windows-95 skin (silver chrome, fixed-width log lines).
  • yomirc-dark — the retro skin in a dark palette.

Set the default for new users:

{ "defaults": { "theme": "dark" } }

Users can switch any time in Settings → Appearance. See the Themes wiki page.

Feature flags

Hide whole features per deployment:

{ "features": { "push": true, "imageUpload": true, "register": false } }
  • push — Web Push notifications: the Settings row and the re-subscribe-on-connect.
  • imageUpload — the composer image button and paste / drag-drop upload.
  • register — account self-service: the "Create account" button, the "Forgot password" link, and their FAQ entries (all hidden together).

Languages

The UI and the bundled plugins are fully translated in 10 languages (auto-detected). Pin a default with defaults.lang; users can switch in Settings.