Skip to content

Markdoc is a powerful, flexible, Markdown-based authoring framework.

From personal blogs to massive documentation sites, Markdoc is a content authoring system that grows with you.

View docs

Try it out

What is Markdoc?

Markdoc is a Markdown-based syntax and toolchain for creating custom documentation sites. Stripe created Markdoc to power our public docs.

Checkmark Circle

Markdoc is open-source—check out its source to see how it works.

How is Markdoc different?

Markdoc uses a fully declarative approach to composition and flow control, where other solutions… Read more.

Next steps

Open source

Maintain full control over your code and content. Markdoc is open-source and fully extensible.

Developer & writer friendly

Markdoc delivers a powerful, flexible, developer experience (DX) with an equally capable authoring experience (AX).

Adopt anywhere

Use Markdoc to create interactive documentation experiences, static content sites, authoring tooling, and more.

Get started quickly

Markdoc core is a lightweight package containing everything you need to get started. If you want to get going even faster, check out our Next.js plugin and deploy a Markdoc documentation site with zero boilerplate.

Explore documentation

Live edit

npm install @markdoc/markdoc
import Markdoc from '@markdoc/markdoc';

const doc = `
# Hello world.
> My first Markdoc page
`;

const ast = Markdoc.parse(doc);

const content = Markdoc.transform(ast);

const html = Markdoc.renderers.html(content);

Markdoc powers Stripe documentation

Stripe created Markdoc to power its largest and most detailed content site. Since then, we have adopted it across the company, writing hundreds of thousands of lines of Markdoc to create thousands of pages of expressive, custom documentation.


  • Familiar syntax

    Markdoc is a syntactic extension of Markdown, so you can keep using all the syntax and tooling you are used to.

    Learn the syntax

  • Easily extensible

    Markdoc lets you customize all aspects of the system, from custom tags and nodes to entirely new renderers.

    Learn more

  • Built-in validation

    You can add custom validation throughout your content system, ensuring nothing breaks and your content remains consistent.

    Learn more