Skip to content

tonidy/docmd

 
 
docmd logo

The minimalist, zero-config documentation generator.

npm version commits downloads stars license

View Live DemoRead DocumentationLive EditorReport Bug

docmd preview
docmd noStyle page preview in dark mode

Features

  • Zero Config: Works out of the box with sensible defaults. Just init and go.
  • Blazing Fast: Generates pure, static HTML. No React hydration lag, no heavy bundles.
  • Smart Search: Built-in, offline-capable full-text search with fuzzy matching. No API keys required.
  • Isomorphic Core: Runs anywhere—Node.js CLI, CI/CD pipelines, or directly in the browser via WASM.
  • Rich Content: Built-in support for Callouts, Cards, Tabs, Steps, Changelogs, and Mermaid diagrams.
  • Theming: Beautiful light/dark modes and multiple pre-built themes (sky, ruby, retro).

Quick Start

Installation:

npm install -g @mgks/docmd

Run:

docmd init my-docs     # Initialize a new project
cd my-docs             # Enter directory
docmd dev              # Start live-reloading server
docmd build            # Generate static site for deployment
docmd live             # Launch live editor to preview and design pages

Dev Server:

                       
     _                 _ 
   _| |___ ___ _____ _| |
  | . | . |  _|     | . |
  |___|___|___|_|_|_|___|
  
   v0.x.x


🚀 Performing initial build...

👀 Watching for changes in:
   - Source: ./docs
   - Config: ./config.js
   - Assets: ./assets

────────────────────────────────────────
  SERVER RUNNING  (v0.3.5)

  Local:    http://127.0.0.1:3000
  Network:  http://192.1.1.1:3000

  Serving:  ./site
────────────────────────────────────────

Usage in Detail

Project Structure

docmd keeps it simple. Your content lives in docs/, your config in docmd.config.js.

my-docs/
├── docs/                  # Your Markdown files
│   ├── index.md           # Homepage
│   └── guide.md           # Content page
├── assets/                # Images and custom CSS
└── docmd.config.js        # Configuration

Configuration

Customize your site in seconds via docmd.config.js:

module.exports = {
  siteTitle: 'My Project',
  srcDir: 'docs',
  outputDir: 'site',
  theme: {
    name: 'sky',           // 'default', 'sky', 'ruby', 'retro'
    defaultMode: 'dark',   // 'light' or 'dark'
    enableModeToggle: true
  },
  navigation: [
    { title: 'Home', path: '/', icon: 'home' },
    { title: 'Guide', path: '/guide', icon: 'book' }
  ]
}

Live Editor

docmd comes with a modular architecture that allows the core engine to run client-side.

Launch locally:

docmd live

This builds and serves a local editor where you can write Markdown and see the preview instantly without any server-side processing.

Embed in your app: You can also use the dist/docmd-live.js bundle to add Markdown compilation capabilities to your own web applications.

Comparison

Feature docmd Docusaurus MkDocs Mintlify
Language Node.js React.js Python Proprietary
Output Static HTML React SPA Static HTML Hosted
JS Payload Tiny (< 15kb) Heavy Minimal Medium
Search Built-in (Offline) Algolia (Ext) Built-in Built-in
Setup ~1 min ~15 mins ~10 mins Instant
Cost Free OSS Free OSS Free OSS Freemium

Community & Support

License

Distributed under the MIT License. See LICENSE for more information.

{ github.com/mgks }

Website Badge Sponsor Badge

About

Generate minimal, fast & beautiful docs from Markdown. No React, no bloat, just content. Built for developers.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 54.7%
  • CSS 31.3%
  • EJS 11.1%
  • HTML 2.9%