v4.17.2
·
66 commits
to main
since this release
Focus: Performance — page content, math and icon assets now load on demand, dramatically shrinking the boot bundle.
Changes
- ⚡ Added on-demand page sources: page markdown stays out of the boot bundle and each page's sources (all locales) merge into vue-i18n at navigation time — the boot i18n chunk shrinks by up to ~97% on large sites
- 🔎 Added per-locale
search-index.<lang>.jsonfiles emitted at build (and served in dev): sidebar content search fetches them on first use, with the legacy in-memory scan as fallback - ➗ Made KaTeX + texmath (and their CSS) load only when a page actually contains dollar math outside code segments
- 🗂️ Made the filename → file-icon map (~130 KB) load on first use
- 🅵 Removed the FontAwesome webfonts (−153 KB): the few glyphs the engine uses are now inlined, tree-shaken SVGs
- 🖋️ Injected
font-display: swapinto the Roboto @font-face rules so text paints immediately with the fallback font - 🚀 Preloaded the DefaultLayout chunk from the built
index.html, removing a network round from every first paint - ♿ Fixed accessibility issues: accessible names for the submenu toggle and copyable inline code, brand-link naming, WCAG AA contrast for alert headings and the code-block language label, and larger touch targets for stacked content links
- 🖼️ Sized the header brand logo to prevent layout shift
- ✅ Validated with the full test suite (319 tests) plus new specs for lazy sources and the content search index