Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/wikioasis/mw-config/llms.txt

Use this file to discover all available pages before exploring further.

WikiOasis mw-config is the production configuration layer that powers the entire WikiOasis MediaWiki farm. It manages hundreds of wikis across wikioasis.org and skywiki.org, providing per-wiki settings, global extension loading, database cluster routing, object storage, caching, and error handling — all forked and extended from Miraheze’s battle-tested mw-config architecture.

Architecture Overview

Understand how LocalSettings, GlobalSettings, MirahezeFunctions, and MultiVersion work together to serve the farm.

Setup & Configuration

Walk through LocalSettings.php, GlobalSettings.php, and PrivateSettings to get a farm instance running.

Multi-Wiki Management

Learn how CreateWiki and ManageWiki drive wiki lifecycle — creation, configuration, states, and version pinning.

Extensions & Skins

Browse the globally loaded extensions, per-wiki extension registry, and extension sections available to wiki admins.

Infrastructure

Database cluster routing, Redis caching, R2 object storage, and observability with Sentry and DogStatsD.

MirahezeFunctions Reference

Full API reference for the MirahezeFunctions class — the core utility powering all multi-wiki logic.

How the farm works

The WikiOasis farm bootstraps each request through a layered configuration pipeline:
1

Request arrives

MediaWiki loads LocalSettings.php, which detects the current wiki from the request hostname and database name.
2

MirahezeFunctions initializes

$wi = new MirahezeFunctions() resolves the DB name, realm (production vs. beta), MediaWiki version, server URL, and wiki state from the CreateWiki cache.
3

SiteConfiguration applies per-wiki settings

$wgConf->settings maps thousands of per-wiki overrides for permissions, uploads, skins, extensions, and more — resolved by $wi->dbname.
4

GlobalSettings and extensions load

GlobalSettings.php applies farm-wide settings (CentralAuth, OpenSearch, Discord notifications, DataDump), and GlobalExtensions.php loads all globally required extensions and skins.

Key capabilities

Two Realms

Production (wikioasis.org / skywiki.org) and beta (betaoasis.xyz) realms with independent database clusters and configuration.

CentralAuth

Strict global accounts with SUL3 support and a shared domain (accounts.wikioasis.org) for cross-wiki authentication.

R2 Object Storage

All wiki media stored in Cloudflare R2 (wikioasis-media bucket) with CDN delivery via cdn.wikioasis.org.

Per-Wiki Versioning

Individual wikis can be pinned to specific MediaWiki versions via WikiFarmMultiVersion without affecting the rest of the farm.

ManageWiki Integration

Wiki admins self-serve extension activation, namespace configuration, and settings through ManageWiki — no config file edits needed.

Observability

Sentry error tracking with 100% trace sampling, DogStatsD metrics to monitoring hosts, and Monolog stderr logging.

Build docs developers (and LLMs) love