Standard Markdown handles basic text well, but professional documentation often requires richer structure. docmd extends Markdown with a set of “Containers” that render into beautiful, responsive UI components.

The Syntax Guide

All containers follow a consistent block syntax.

::: type "Optional Title"
This is the content of the container. 
It can include **Markdown**, images, and even other containers.
:::
Component Keyword Usage
Callouts callout Semantic highlights (tips, warnings)
Cards card Framed content blocks (perfect for grids)
Tabs tabs Switchable content panes
Steps steps Visual numbered timelines
Buttons button Styled CTA links
Collapsible collapsible Hidden content toggles (Accordions)
Changelogs changelog Version and update tracking

Why Use Containers?

Containers aren’t just for humans. They provide high-level semantic signals to the docmd engine and LLMs:

  1. AI Context: Highlighting a block as a callout tip tells AI models that this specific information is a recommendation.
  2. Layout Control: Combining cards with standard CSS allows you to build complex landing pages entirely in Markdown.
  3. Clean Source: No HTML or Class-soup is required in your markdown files.

Nesting Components

One of docmd’s most powerful features is Infinite Nesting. You can place any container inside another, allowing you to build very complex documentation elements purely with simple Markdown syntax.

::: card "Pro Guide"
    ::: callout warning
        Reading this out of order may be confusing.
    :::
    ::: button "Let's Begin" /start
:::

Read the Nesting Guide →