v3.16.0
3.16.0 (2026-05-12)
⚠️ Breaking change: HTML for the share and preference buttons have changed in this release. If your wiki caches HTML output, it is recommended to purge the cache after updating.
Highlights
-
⌘ More power in the command palette
Press/to open the command palette — no menu hunting required:- 🗂️ Categories — open it to see this page's categories; type to find any category and step inside it
- 🖼️ Files and media — open it to see files used on this page; type to browse the wiki's media as a gallery with previews
- 🕒 Revision history — scrub recent edits to this page. Pair with the optional Instant Diffs gadget to view diffs without leaving the page
- 💡 Help overlay — press
?for a cheat sheet of all modes and shortcuts
-
🔗 Customize the share panel
Define which services appear in the share panel using on-wiki JSON — add Mastodon, Discord, or anything you can express as a URL template. Falls back to the system share sheet where supported, and integrates with Extension:UrlShortener for short links. -
🎨 Try the new color token pipeline
Flip$wgCitizenUseNewTokenon to swap in a Codex-aligned color token system. It's still experimental — give it a spin and tell us what breaks. This is the foundation for richer theming, and will become the default in the next major release. -
⚡ Faster initial load
Pages render sooner — extra UI only loads when you open it.
Changelog
Features
- ArticleFeedbackv5: ✨ add custom styles (by @alistair3149 and @whostacking) (#1544) (890fb4b)
- commandPalette: ✨ add category mode with drill-down (by @alistair3149) (#1502) (7980b48)
- commandPalette: ✨ add compact result row variant for command-style modes (by @alistair3149) (bb48568)
- commandPalette: ✨ add copy-to-clipboard affordance with keyboard shortcut (by @alistair3149) (01b911d)
- commandPalette: ✨ add defensive register-time warnings (by @alistair3149) (28806ab)
- commandPalette: ✨ add defineMode and defineCommand factories (by @alistair3149) (7b204ce)
- commandPalette: ✨ add file and media mode (by @alistair3149) (b85a719)
- commandPalette: ✨ add gallery container and tile components (by @alistair3149) (36d68dc)
- commandPalette: ✨ add getItemDetail to defineMode contract (by @alistair3149) (e8951c8)
- commandPalette: ✨ add help descriptions to built-in modes (by @alistair3149) (adc333e)
- commandPalette: ✨ add help overlay (by @alistair3149) (6e7d18c)
- commandPalette: ✨ add revision history mode (by @alistair3149) (834ecd7)
- commandPalette: ✨ add useGridNavigation composable (by @alistair3149) (cc2b19f)
- commandPalette: ✨ defer bundle load until user signals intent (by @alistair3149) (cbde350)
- commandPalette: ✨ expose defineMode/defineCommand to extension authors (by @alistair3149) (abaf41c)
- commandPalette: ✨ opt help overlay and SMW mode into compact rows (by @alistair3149) (5b75fc1)
- commandPalette: ✨ preview revisions in-place via Instant Diffs (by @alistair3149) (16278e9)
- commandPalette: ✨ rename Remove tag hint to Edit tag (by @alistair3149) (c05487c)
- commandPalette: ✨ show Backspace hints via keybinding registry (by @alistair3149) (2cca4bc)
- commandPalette: ✨ show file preview in detail panel (by @alistair3149) (0db8f27)
- commandPalette: ✨ suggest Category in SMW mode (by @alistair3149) (449beda)
- commandPalette: ✨ swap between list and grid layouts per mode (by @alistair3149) (ef67b1f)
- commandPalette: ✨ tint copy success checkmark with success color (by @alistair3149) (6d2a725)
- commandPalette: ✨ trigger lazy item-detail fetch on focus change (by @alistair3149) (3f971c4)
- commandPalette: ✨ wire orchestration requestItemDetail for lazy detail (by @alistair3149) (2b5465d)
- core: ✨ drop view transition (by @alistair3149) (6886b11)
- core: ✨ increase link underline offset (by @alistair3149) (5019251)
- docs: ✨ 📚️ show h3 headings in the page outline (by @alistair3149) (024e83b)
- docs: ✨ 📚️ versioned documentation site (by @alistair3149) (c761930)
- pageFooter: ✨ make category links more compact (by @alistair3149) (62ec631)
- preferences: ✨ show skeleton and preload menu on hover or focus (by @alistair3149) (9384172)
- scripts: ✨ add bindIntentPrefetch shared primitive (by @alistair3149) (a00cd79)
- share: ✨ customizable share panel with Web Share API fallback (by @alistair3149 and @wlft) (#1533) (d720f8e)
- share: ✨ integrate Extension:UrlShortener with the share panel (by @alistair3149) (46e2215)
- tokens: ✨ introduce new color token pipeline (opt-in) (by @alistair3149) (2f39de7)
- typography: ✨ tighten Roboto fallback metrics to hide swap (by @alistair3149) (2c0c61b)
Bug Fixes
- 🐛 derive inline script path relative to file location (by @alistair3149) (b5c8af7), closes #1479
- commandPalette: 🐛 define missing mode label messages (by @alistair3149) (36d7f43)
- commandPalette: 🐛 restore body height animation (by @alistair3149) (df80159)
- commandPalette: 🐛 show SVG and small-bitmap thumbnails in file mode (by @alistair3149) (9c1767d)
- ooui: 🐛 suppress focus ring on dialog focus traps (by @alistair3149) (c528211)
- print: 🐛 hide sticky header (by @Yanndroid) (3412397)
- toc: 🐛 restore px on zero header tokens used in calc() (by @alistair3149) (c35b2bd)
- tokens-new: 🐛 patch incorrect black mode colors (by @alistair3149) (77d7474)
Performance Improvements
- commandPalette: ⚡️ lazy-load gallery thumbnails with native <img> (by @alistair3149) (7a79e27)
- commandPalette: ⚡️ make file gallery thumbnail width DPR-aware (by @alistair3149) (2869224)
- commandPalette: ⚡️ split file mode list query from per-item detail (by @alistair3149) (740ab75)
Miscellaneous Chores
- 🔧 drop one-shot font fallback generator (by @alistair3149) (1ee9872)
- 🔧 exclude docs from skin-level pre-commit hooks (by @alistair3149) (4e38fb5)
- 🔧 fix devmoji prepare-commit-msg in git worktrees (by @alistair3149) (18b8434)
- agents: 🔧 add finalize-release skill (by @alistair3149) (fc983f4)
- delete unused tests/scripts directory (by @alistair3149) (8f6adee)
New Contributors
- @Yanndroid made their first contribution in #1521
Full Changelog: v3.15.1...v3.16.0