Spaces:
Configuration error
Configuration error
--- | |
sidebar_position: 4 | |
--- | |
# Markdown Features | |
Docusaurus supports **[Markdown](https://daringfireball.net/projects/markdown/syntax)** and a few **additional features**. | |
## Front Matter | |
Markdown documents have metadata at the top called [Front Matter](https://jekyllrb.com/docs/front-matter/): | |
```text title="my-doc.md" | |
// highlight-start | |
--- | |
id: my-doc-id | |
title: My document title | |
description: My document description | |
slug: /my-custom-url | |
--- | |
// highlight-end | |
## Markdown heading | |
Markdown text with [links](./hello.md) | |
``` | |
## Links | |
Regular Markdown links are supported, using url paths or relative file paths. | |
```md | |
Let's see how to [Create a page](/create-a-page). | |
``` | |
```md | |
Let's see how to [Create a page](./create-a-page.md). | |
``` | |
**Result:** Let's see how to [Create a page](./create-a-page.md). | |
## Images | |
Regular Markdown images are supported. | |
You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`): | |
```md | |
 | |
``` | |
 | |
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: | |
```md | |
 | |
``` | |
## Code Blocks | |
Markdown code blocks are supported with Syntax highlighting. | |
```jsx title="src/components/HelloDocusaurus.js" | |
function HelloDocusaurus() { | |
return ( | |
<h1>Hello, Docusaurus!</h1> | |
) | |
} | |
``` | |
```jsx title="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 | |
## MDX and React Components | |
[MDX](https://mdxjs.com/) can make your documentation more **interactive** and allows using any **React components inside Markdown**: | |
```jsx | |
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> ! | |
``` | |
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> ! | |