Build production-ready documentation from Markdown in seconds.
Zero setup when you start. Full control when you need it.
Run docmd instantly in any folder with Markdown files:
npx @docmd/core devStarts: http://localhost:3000
That’s it.
- Navigation is generated automatically
- Pages render instantly
- Your docs are production-ready by default
Build your site:
npx @docmd/core buildnpm install -g @docmd/coredocmd dev # start dev server
docmd build # build for deploymentDesigned to start instantly and scale without friction.
- Automatic navigation from your files
- Zero configuration required
- Works directly with Markdown
- Static HTML generation
- SEO optimised (sitemap, canonical, redirects)
- Tiny JavaScript payload
- Internationalisation (i18n)
- Versioning
- Offline search
- PWA support
- Analytics
- AI context (
llms.txt)
- Plugin support
- Custom configuration and navigation
- Theming
- Programmatic API
See the full roadmap.
Keeps your project simple.
my-docs/
├── docs/
├── assets/
├── docmd.config.js (optional)
└── package.jsonA browser-based editor for writing and previewing docs instantly. No setup required.
Try it: live.docmd.io
No configuration is required to get started.
Add a config file (docmd.config.js in the project root) only when you need more control.
const { defineConfig } = require('@docmd/core');
module.exports = defineConfig({
title: 'My Project',
url: 'https://docs.myproject.com',
});module.exports = defineConfig({
// Versioning
versions: {
current: 'v2',
all: [
{ id: 'v2', dir: 'docs' },
{ id: 'v1', dir: 'docs-v1' }
]
},
// Internationalisation
i18n: {
default: 'en',
locales: [
{ id: 'en', label: 'English' },
{ id: 'zh', label: '中文' },
]
}
});Other common settings include src, out, navigation, plugins, and theming.
Use in scripts or CI pipelines:
const { build, buildLive } = require('@docmd/core');
await build('./docmd.config.js', { isDev: false });
await buildLive();Full configuration, plugins, and advanced usage: docs.docmd.io
Core functionality is included by default.
Everything works out of the box.
Plugins are only needed when you want to extend functionality.
| Plugin | Included | Description |
|---|---|---|
search |
✓ | Offline full-text search with fuzzy matching |
seo |
✓ | SEO tags and Open Graph metadata |
sitemap |
✓ | Generates sitemap.xml |
analytics |
✓ | Lightweight analytics integration |
llms |
✓ | AI context generation (llms.txt) |
mermaid |
✓ | Mermaid diagrams in Markdown |
pwa |
Optional | Progressive Web App support for offline navigation |
threads |
Optional | Inline discussion threads (by @svallory) |
math |
Optional | KaTeX/LaTeX math rendering |
Install optional plugins:
docmd plugin add <plugin-name>| Feature | docmd | Docusaurus | MkDocs Material | VitePress | Mintlify |
|---|---|---|---|---|---|
| Language | Node.js | React.js | Python | Vue | SaaS |
| Config required | None | docusaurus.config.js |
mkdocs.yml |
config.mts |
mint.json |
| Initial payload | ~18kb | ~250kb | ~40kb | ~50kb | ~120kb |
| Navigation | Instant SPA | React SPA | Full reloads | Vue SPA | Hosted SPA |
| Versioning | Built-in | Native (complex) | mike plugin | Manual | Native |
| i18n | Built-in | Native (complex) | Plugin-based | Manual | Native |
| Search | Built-in (offline) | Algolia (cloud) | Built-in | MiniSearch | Cloud |
| AI Context | Built-in (llms.txt) |
Manual | None | None | Proprietary |
| PWA | Official Plugin | Community plugin | None | None | Hosted |
| Self-hosted | Yes | Yes | Yes | Yes | No |
| Zero-config | npx @docmd/core dev |
No | No | No | No |
| Cost | Free (OSS) | Free (OSS) | Free (OSS) | Free (OSS) | Freemium |
Starts simple. Scales without friction.
Documentation tools should disappear.
Focus on writing, not setup.
No configuration overhead. No framework complexity. Just docs.
- Contributions are welcome. See CONTRIBUTING.md
- If you find it useful, consider sponsoring or starring the repo ⭐
MIT License. See LICENSE for details.
