The org landing page still opened with "A website + game bridge for private
Ultima Online (ServUO) shards" and listed six repositories. The module system
made the first untrue and Phase 5 made the second wrong by two: Module-uo and
Integration-kit.
Reframed rather than patched. Runic Gateway is a website platform for game
communities that knows nothing about any particular game; everything
game-specific arrives as an installable module, and Ultima Online is the first
one. The repo table splits accordingly — the platform (website, Android-app,
docs, Integration-kit) and UO support (Module-uo, link, servuo-plugins,
installer) — and "How they fit together" now leads with the three layers any
game needs (plugin, sidecar, module) before the UO specifics, including the rule
that the website process never opens a connection to a game server.
Quick start gains step 2: install a module. Paste a release's install-manifest
URL into Admin -> Modules, or declare MODULES=<id>@<version>=<url> on a
compose-managed host. Both were checked against server/.env.example rather than
written from memory.
One honest blockquote says the module system lives on the website's `edge`
branch until the cutover, so nobody clones `main` looking for a Modules screen
that is not there yet.
Co-Authored-By: Claude <noreply@anthropic.com>
Last touched 2026-07-23, before the installer repo existed.
- Six repos, not five: add installer to the table.
- Quick start: steps 2 (cargo build the sidecar) and 3 (see the plugin
repo for deploy steps) collapse into one installer run, which is how a
shard is actually set up now. The by-hand path is kept as a note.
- Day-two commands and the note that the installer does not install
itself, so nobody looks for `runicgateway` on PATH.
- Mention what shipped since: the player-vendor marketplace, the spawn
atlas, the admin-configurable shard visibility framework, and the
account-security layer (TOTP + trusted devices, link-only SSO, bot
scoring).
- "Where to go next" leads with INSTALL.md; the link and servuo-plugins
entry is now about working on them rather than deploying them.
Verified rather than assumed: JDK 17 and min SDK 29 still match
app/build.gradle.kts, and Node 20+ still matches the website README and
its Dockerfile.
Co-Authored-By: Claude <noreply@anthropic.com>
Re-commit the org profile as plain markdown. The prior commit passed
pre-encoded content, which the API base64-encoded a second time and
rendered as gibberish.
Co-Authored-By: Claude <noreply@anthropic.com>
Weave the native Android client through the profile README: fifth row in
the pieces table, a second client branch in the architecture diagram, a
"how it fits" note (API-only client, self-configuring URL, ntfy push, no
Play Services), a Quick start section, a where-to-go-next pointer, and a
CI badge.
Co-Authored-By: Claude <noreply@anthropic.com>