Write docs content using Markdown
Add Markdown or MDX pages
Add pages manually to your documentation by creating Markdown (.md
) or MDX (.mdx
) files. New to Markdown? See Markdown Guide: Getting started.
NOTE: Throughout our documentation, we refer to both Markdown and MDX as Markdown. MDX is a version of Markdown, extended to allow the use of JSX components.
Place your pages inside your fern/
folder and link to them from your navigation settings in the docs.yml
file.
In the example below, the MDX files are inside a folder named pages/
.
Page header
Fern automatically generates the <h1>
page header for each page from docs.yml
. For example, here’s the docs.yml
entry that maps the page you are reading now:
The value for page
is used as the content of the top <h1>
element of this page. Thus, when adding content to your Markdown pages, begin with <h2>
instead of <h1>
.
Fern components
Fern has a built-in component library you can use in Markdown. Explore the components.
Links in Markdown
Link target
When clicked, links to relative URLs open in the same tab, whereas links to absolute URLs open in a new browser tab.
Link format
Use a /
character to begin a relative URL to another page on your docs site. This routes to the url
defined in your docs.yml
file, such as example-docs.buildwithfern.com
. For example, if you want to link to https://example-docs.buildwithfern.com/overview/introduction
, you can write the link in Markdown as follows:
Images
You can use locally stored images or URLs to include images in your Markdown pages. Use either Markdown syntax or the <img>
HTML tag to insert the image.
Markdown
HTML
Common image attributes:
For more details about the HTML image element and its attributes, see the MDN documentation on the img element.
Embedding local assets
You can embed local assets in your Markdown pages using the <embed>
component. This is useful for displaying PDFs, images, videos, OpenAPI files, and other assets into your docs.
For example, to embed a video, use the following Markdown:
Embedding videos
You can embed videos in your documentation using the HTML <video>
tag. This gives you control over video playback settings like autoplay, looping, and muting.
You can also wrap the video in a container div for additional styling:
Common video attributes:
For more details about the HTML video element and its attributes, see the MDN documentation on the video element.
LaTeX
Fern supports LaTeX math equations. To use LaTeX, wrap your inline math equations in $
. For example, $(x^2 + y^2 = z^2)$
will render .
For display math equations, wrap the equation in $$
. For example:
Diagrams
Fern supports creating diagrams within your Markdown using Mermaid. Mermaid offers a variety of diagrams, including flowcharts, entity-relationship models, and Gantt charts. To include a Mermaid diagram in your Markdown file, create a codeblock marked with mermaid
.