- 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.
1.9 KiB
1.9 KiB
Section: Getting started Order: 10
Overview
Orbit is a modern web client for IRC — the open chat protocol that has quietly run communities for decades. It runs entirely in the browser: pick a nick and you're talking, with no install and no signup.
It powers tchatou.fr, and is built to be re-pointed at any IRCv3
network and rebranded from a single config.json — without recompiling.
What makes it different
- Full IRCv3. Orbit negotiates 24 capabilities — SASL, message-tags, reactions, typing indicators, read-markers, multi-line messages, server-side history, account registration, and Web Push. See IRCv3 capabilities.
- Pluggable at runtime. A static
config.jsonis fetched on startup and sets the server, channels, branding, themes and feature flags. One build can serve any community. See config.json reference. - Installable PWA. Mobile-first layout, offline app shell, and notifications when the tab is closed.
- Speaks 10 languages. The UI, system messages, and the bundled plugins are fully translated
and auto-detected (English, French, German, Spanish, Italian, Turkish, Russian, Nepali, and
Brazilian + European Portuguese). Pin a default with
defaults.lang. - Self-hostable. A static build behind any web server. The project even runs its own git server with push-to-deploy.
- Free software. AGPL-3.0 — use it, modify it, self-host it.
Tech
React 19 · TypeScript · Vite · zustand. Tested with Vitest, linted, and built in CI. The codebase is a clean modular tree — see Architecture.
New here? Jump to the Quick start to run your own in a minute.