Skip to main content

Markdown Features

Docusaurus supports Markdown and a few additional features.

Front Matter​

Markdown documents have metadata at the top called Front Matter:

my-doc.md
---
id: my_doc_id
title: My document title
description: My document description
slug: /my-custom-url
tags:
- developer
---

## Markdown heading

Markdown text with [links](./hello.md)

We recommend that all markdown pages should have at minimum a title, description and tags array defined. An id may be specified, but can be derived off of the filename when omitted.

info

A complete listing of Docusaurus supported front matter fields can be found here.

Regular Markdown links are supported, using url paths or relative file paths.

Let's see how to [Create a page](/create_a_page).
Let's see how to [Create a page](./create_a_page.md).

Result: Let's see how to Create a page.

Images​

Regular Markdown images are supported.

You can use absolute paths to reference images in the static directory (static/img/docusaurus.png):

![Docusaurus logo](/img/docusaurus.png)

Docusaurus logo

You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them:

![Docusaurus logo](./img/docusaurus.png)

Code Blocks​

Markdown code blocks are supported with Syntax highlighting.

```jsx title="src/components/HelloDocusaurus.js"
function HelloDocusaurus() {
return <h1>Hello, Docusaurus!</h1>;
}
```
src/components/HelloDocusaurus.js
function HelloDocusaurus() {
return <h1>Hello, Docusaurus!</h1>;
}

Admonitions​

Docusaurus has a special syntax to create admonitions and callouts:

:::tip[My tip]

Use this awesome feature option

:::

:::danger[Take care]

This action is dangerous

:::
My tip

Use this awesome feature option

Take care

This action is dangerous

Mermaid Graphs​

Our Docusaurus instance supports diagramming and charting through Mermaid. The following are some quick examples that can be achieved using Mermaid. For more details on the wide range of charts supported, visit their documentation for more details under the Diagram Syntax section on the sidebar.

State Machine​

```mermaid
graph TD
A-->B
A-->C
B-->D
C-->D
```

Flowchart​

```mermaid
graph LR
A[PIES] -->|Get spec| B(Stakeholder approval)
B --> C{Purpose}
B --> G[/Further Analysis/]
C ==>|One| D[Document Exchange]
C -->|Two| E[Event Alerts]
C -->|Three| F[Aggregation]
subgraph identification
A
B
end
subgraph execution
C
D
E
F
G
end
```

MDX and React Components​

MDX can make your documentation more interactive and allows using any React components inside Markdown:

export const Highlight = ({children, color}) => (
<span
style={{
backgroundColor: color,
borderRadius: '20px',
color: '#fff',
padding: '10px',
cursor: 'pointer',
}}
onClick={() => {
alert(`You clicked the color ${color} with label ${children}`)
}}>
{children}
</span>
);

This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !

This is <Highlight color="#1877F2">Facebook blue</Highlight> !

This is Docusaurus green !

This is Facebook blue !