✨ Highlights
This release introduces semantic search as an alpha preview, adds automatic robots.txt generation in the SEO plugin, fixes Mermaid C4Context rendering, and includes a new config upgrade command for modernising existing projects.
Semantic Search (Alpha Preview)
docmd now supports semantic search powered by local embeddings, enabling context-aware search results beyond simple keyword matching.
Features
- Context-aware search beyond exact keyword matches
- Natural typo tolerance
- Finds related content even when different terminology is used
- Fully local processing with no external services or API calls
Enable semantic search by adding semantic: true to your configuration:
{
"plugins": {
"search": {
"semantic": true
}
}
}
The search plugin automatically installs docmd-search and downloads required models, if failed to do so, it falls back to keyword search.
Documentation - https://docs.docmd.io/plugins/search/#semantic-search-alpha-preview
Note: This is an alpha preview. Multilingual models are available, but broader testing and optimisation are still ongoing.
Introducing Offline Semantic Search Engine (docmd-search)
We’re excited to introduce docmd-search.
npm install docmd-search
docmd-search is a semantic search engine built for documentation sites. It runs entirely in the browser or CLI, requires no servers or API keys, and keeps all processing local.
Although created for docmd, it can be integrated into other documentation platforms, websites, and web applications.
This is an early alpha release and will continue to evolve, but the foundation is already in place.
GitHub: https://github.com/docmd-io/docmd-search
Documentation: https://docs.docmd.io/search/
SEO Plugin: robots.txt Auto-Generation
The SEO plugin now automatically generates a robots.txt file during the build process if one does not already exist.
Features
- Smart defaults with
User-agent: *andAllow: / - Automatic sitemap references when
config.urlis configured - Optional AI crawler controls
- Existing
robots.txtfiles are never overwritten
{
"plugins": {
"seo": {
"aiBots": false
}
}
}
By default AI crawlers are allowed. Setting aiBots: false adds directives for GPTBot, ChatGPT-User, Google-Extended, CCBot and other supported AI crawlers.
Mermaid C4Context Fix
C4Context diagrams now render correctly instead of appearing as blank white boxes.
The issue was caused by a missing SVG namespace generated by Mermaid when rendering C4Context diagrams. docmd now automatically injects the required namespace before parsing, ensuring these diagrams render correctly.
Thanks to @sinsombat for the fix and accompanying test suite.
Config Upgrade Command
A new --upgrade flag has been added to the docmd migrate command.
npx @docmd/core migrate --upgrade
Running the command automatically updates older configuration files to the modern schema.
The following legacy keys are migrated automatically:
| Legacy Key | Modern Key |
|---|---|
projects |
workspace.projects |
siteTitle |
title |
siteUrl / baseUrl |
url |
srcDir / source |
src |
outputDir |
out |
defaultLocale |
i18n.default |
Existing values are preserved during migration.
TOC HTML Entity Decoding
Heading text containing special characters such as <, >, &, and smart quotes now displays correctly in the Table of Contents sidebar.
Previously, these characters appeared as raw HTML entities instead of their intended representation.
Changelog
New Features
- Added alpha preview support for semantic search via
docmd-search. - Added automatic
robots.txtgeneration to the SEO plugin. - Added
search.showFiltersto hide the version filter bar above search results. - Added
search.showConfidenceto display semantic search confidence percentages. - Added right-aligned search result metadata for versions and confidence badges.
Bug Fixes
- Fixed Mermaid C4Context diagrams rendering as blank white boxes.
- Fixed Live Editor template rendering crash caused by early
workspaceaccess. - Fixed HTML entity decoding in the Table of Contents.
- Fixed excessive dev server reloads caused by duplicate
fs.watchevents on macOS.
Improvements
- Added
docmd migrate --upgradefor automated configuration modernisation. - Restyled the Project Switcher to align with the appearance and language controls.
- Config and
navigation.jsonchanges now trigger fast targeted rebuilds instead of full restarts. - The dev server now automatically opens the documentation URL in the default browser on startup.
Thanks 💖
Thanks to all contributors, testers, and issue reporters who helped improve this release.
Documentation: https://docs.docmd.io/
GitHub: https://github.com/docmd-io/docmd