Markdown keeps your writing easy to edit and easy to move. This page shows the formatting supported by the site.
Headings and paragraphs
The page title comes from content/pages.json. Start the body with an introduction, then use level-two headings for sections and level-three headings for smaller topics.
An introduction to your page.
## A section heading
Write your content here. Use **bold** for emphasis,
*italics* for a softer emphasis, and `code` for filenames.
A smaller heading
Use smaller headings when a section needs more detail. Section headings automatically appear in the “On this page” navigation.
Lists and links
Use a simple list to collect related ideas:
- Keep paragraphs focused on one topic.
- Give links a descriptive label.
- Use numbered lists for steps that have an order.
Link to another page using a relative address. From this page, the HTML example is at ../html-example/, and the welcome page is at ../.
Tables and code
Tables work well for small comparisons.
| Content | Source file | Best for |
|---|---|---|
| Markdown | .md |
Notes, guides, and reference pages |
| HTML | .html |
Custom content structures |
Fenced code blocks preserve spacing and punctuation:
{
"slug": "my-first-page",
"title": "My first page",
"label": "Notes",
"description": "A short introduction to the page.",
"file": "my-first-page.md"
}
Add your first page
- Create
content/my-first-page.md. - Add the entry above to the
pagesarray incontent/pages.json. - Run
npm run buildto generate the site.
Use npm run dev while writing. It rebuilds the site when content or styles change; refresh your browser to see the latest version.
Images and other assets
Put images in public/. They are copied into the published site. From a nested page, an image stored as public/images/example.jpg can be referenced as ../images/example.jpg.
Every page has a permanent address. You can link directly to a page or to one of its section headings.