unjs/undocs

Minimal Documentation theme and CLI for shared usage across UnJS projects.

TypeScript

364

618 commits

updated Oct 19, 2026

See the code

README

UnDocs

Minimal documentation theme and CLI for shared usage across UnJS/H3/Nitro projects.

Write your docs as Markdown, drop in a single config file, and get a fast, elegant, zero-config documentation site — dev server, production build, search, and llms.txt included.

Quick Start

A docs project is three files. Create them in a docs/ folder:

1. docs/package.json — pulls in the CLI and wires up two scripts:

{
  "name": "docs",
  "private": true,
  "scripts": {
    "dev": "undocs dev",
    "build": "undocs build"
  },
  "devDependencies": {
    "undocs": "latest"
  }
}

2. docs/.config/docs.yaml — your site config:

# yaml-language-server: $schema=https://unpkg.com/undocs/schema/config.json
name: "packageName"
shortDescription: "One-line summary."
description: "A longer description of your project."
github: "unjs/packageName"

3. docs/1.guide/1.index.md — your first page:

# Getting Started

Welcome to the docs!

Then install and start the dev server on localhost:3000:

cd docs
npm install
npm run dev

Build a static production bundle with npm run build.

Adding pages

Every Markdown file becomes a page. Numeric prefixes (1., 2.) control the order in the sidebar and are stripped from the URL, so 1.guide/1.index.md is served at /guide. Add folders and files to grow the navigation — no routing setup required:

docs/
├─ .config/
│  └─ docs.yaml
├─ 1.guide/
│  ├─ 1.index.md       → /guide
│  └─ 2.usage.md       → /guide/usage
└─ 2.config/
   └─ 1.index.md       → /config

See the configuration reference for the full list of options (landing page, banner, socials, sponsors, llms.txt, and more).

Stack

Undocs is currently powered by Nitro, Vite, md4x, rangi, Unhead and Reka UI.

UnDocs was originally based on Nuxt, Nuxt UI, Nuxt Content (Comark), Vue Router, and other Nuxt ecosystem modules such as nuxt-llms and nuxt-icon which inspired the new generation of undocs.

License

Published under the MIT license.

unjs/undocs

Minimal Documentation theme and CLI for shared usage across UnJS projects.

TypeScript

364

618 commits

updated Oct 19, 2026

See the code

README

UnDocs

Minimal documentation theme and CLI for shared usage across UnJS/H3/Nitro projects.

Write your docs as Markdown, drop in a single config file, and get a fast, elegant, zero-config documentation site — dev server, production build, search, and llms.txt included.

Quick Start

A docs project is three files. Create them in a docs/ folder:

1. docs/package.json — pulls in the CLI and wires up two scripts:

{
  "name": "docs",
  "private": true,
  "scripts": {
    "dev": "undocs dev",
    "build": "undocs build"
  },
  "devDependencies": {
    "undocs": "latest"
  }
}

2. docs/.config/docs.yaml — your site config:

# yaml-language-server: $schema=https://unpkg.com/undocs/schema/config.json
name: "packageName"
shortDescription: "One-line summary."
description: "A longer description of your project."
github: "unjs/packageName"

3. docs/1.guide/1.index.md — your first page:

# Getting Started

Welcome to the docs!

Then install and start the dev server on localhost:3000:

cd docs
npm install
npm run dev

Build a static production bundle with npm run build.

Adding pages

Every Markdown file becomes a page. Numeric prefixes (1., 2.) control the order in the sidebar and are stripped from the URL, so 1.guide/1.index.md is served at /guide. Add folders and files to grow the navigation — no routing setup required:

docs/
├─ .config/
│  └─ docs.yaml
├─ 1.guide/
│  ├─ 1.index.md       → /guide
│  └─ 2.usage.md       → /guide/usage
└─ 2.config/
   └─ 1.index.md       → /config

See the configuration reference for the full list of options (landing page, banner, socials, sponsors, llms.txt, and more).

Stack

Undocs is currently powered by Nitro, Vite, md4x, rangi, Unhead and Reka UI.

UnDocs was originally based on Nuxt, Nuxt UI, Nuxt Content (Comark), Vue Router, and other Nuxt ecosystem modules such as nuxt-llms and nuxt-icon which inspired the new generation of undocs.

License

Published under the MIT license.

Project health

Latest release

0.4.17 · Jul 22, 2026

Releases this year

7

Significant stargazers

Birk Skyum

230 followers · starred Feb 2024

Johann Schopplich

952 followers · starred Feb 2024

Andrei L

261 followers · starred Sep 2026

Misha Kaletsky

136 followers · starred Jul 2024