New Features
14 new additions
- Internationalization (i18n) — opt-in multi-language support with locale-based routing, automatic fallback to default locale, fallback banner, locale switcher dropdown, RTL support, and hreflang SEO metadata
- Documentation versioning — opt-in Docusaurus-style folder snapshots with
npm run version:snapshot, version switcher dropdown, per-version sidebars, andversions.jsontracking - Landing page feature cards — redesigned hero section with SVG visual elements, gradient headers, and motion hover animations (replaces emoji-based cards)
- "Edit this page" link — pencil icon link next to last-updated info, configurable via
editBaseUrlinconfig/site.ts - Mobile/tablet navbar buttons — search and theme toggle buttons now visible below the
lgbreakpoint - Reusable content variables —
config/variables.tswith{vars.variableName}syntax in MDX files - i18n guide — new documentation at
/guides/i18n/ - Versioning guide — new documentation at
/guides/versioning/ - Sidebar collapse — persistent collapse/expand toggle for the docs sidebar
- Partial files — files and folders prefixed with
_are excluded from routing, search, and sidebar - Sidebar export —
npm run export:sidebargenerates a CSV of all sidebar entries with frontmatter metadata for spreadsheet-based content auditing - Role audience tagging —
rolefrontmatter field renders colored chips below the page title to indicate target audience (e.g. Developer, Admin) - Document type metadata —
doc_typefrontmatter field for content classification (concept, how-to, reference, tutorial); included in sidebar exports but not rendered on the page - Draft pages —
draft: truefrontmatter field excludes a page from the production build, search index, and FAQ index while keeping it visible in sidebar exports for content auditing
Improvements
6 enhancements
- Search index now uses a keyed format (
{ "en:current": [...] }) for multi-locale/version support, with backward compatibility for the legacy flat array format - FAQ index uses the same keyed format as search
- Sidebar
resolveSidebar()now acceptsurlPrefixand optionalsidebarItemsparameters for version-aware link generation - Category sidebar items now support a
linkproperty for making the category label itself navigable - Project structure in Getting Started docs updated to reflect scaffolded project layout
- Removed "Clone the repo" option from Getting Started — only the
npx create-trellis-docsscaffolder is documented
Bug Fixes
3 issues resolved
- Table of contents no longer picks up headings inside fenced code blocks
- Blog pages no longer fail with
vars is not definederror (addeddocVariablesscope to blog MDX rendering) - Production build no longer fails on
@/versioned_sidebarswebpack resolution when the directory doesn't exist