Writing content

Learn how to author and structure documentation pages in CamelMind using MDX.

CamelMind uses MDX β€” Markdown extended with JSX. MDX combines standard Markdown with React components, giving you all the simplicity of Markdown plus interactive components such as Callouts, Tabs, and step-by-step guides.

To publish a page in CamelMind:

  1. Create an .mdx file inside the content/ directory.
  2. Add the page to nav/nav.yml.
  3. Start writing.
Tip

Unlike other documentation frameworks, CamelMind does not generate URLs from your folder structure. Instead, every page is mapped to a URL in nav/nav.yml, giving you complete control over your site's navigation.


CamelMind MDX file format

Every content file in CamelMind is a plain .mdx file with optional YAML frontmatter at the top:

mdx
---
title: My Page
description: A short summary used in search results and meta tags.
last_updated: "2026-06-01"
hide_table_of_contents: true
---

Body content goes here.

Frontmatter fields for CamelMind MDX pages

Below are the frontmatter fields you can use at the top of CamelMind MDX pages, including page titles, descriptions, update dates, and table of contents settings.

FieldRequiredDescription
titleYesPage title shown in the browser tab and sidebar
descriptionNoShort summary for search results and <meta> description
last_updatedNoOverride the value determined by the showLastUpdated configuration with a specific date.
hide_table_of_contentsNoSet to true if you want to hide the page's Table of Contents.

Supported Markdown syntax in CamelMind

CamelMind supports full CommonMark Markdown plus GitHub Flavored Markdown, including tables, task lists, and strikethrough text. For basic formatting syntax, see the GitHub Markdown guide.


Code blocks and syntax highlighting

CamelMind automatically applies syntax highlighting to code blocks written in your documentation files. Use fenced code blocks with a language identifier:

bash
npm run dev
typescript
const greeting = "Hello, world!"
yaml
nav:
  - label: "Getting Started"
    dropdown: true

Supported languages include bash, typescript, javascript, python, yaml, json, mdx, css, html, sql, and more.


Formatting inline elements

You can format inline elements like bold text, italics, inline code, links, and embedded images within CamelMind MDX documents:

mdx
**Bold text**
*Italic text*
`inline code`
[Link text](https://example.com)
![Alt text](image.png)

See Basic writing and formatting syntax for more information.


Inserting images in documentation

CamelMind makes it simple to embed image files into your documentation content. Store images in public/images/ and reference them with a root-relative path:

mdx
![Diagram](/images/architecture.png)

Images automatically support click-to-zoom on documentation pages.


Reusing partial content across pages

If you need to reuse the same content across several documentation pages in CamelMind, create it as a partial.

Store reusable snippets as .mdx files in the /content/_partials directory, then include them anywhere in your documentation using the <Partial> component:

mdx
<Partial file="_partials/your-snippet.mdx"/>

Using partials helps you maintain shared content in a single place, making updates easier and ensuring consistency across your documentation.

Use partial files only for inclusion; do not reference them directly in any nav/*.yml file.


Using MDX React components

Because CamelMind uses MDX, you can embed React components directly into your documentation without importing them manually.

mdx
<Callout type="tip">
This is a tip.
</Callout>

Rendered as:

Tip: This is a tip.

And this:

mdx
<Steps>
  <Step n="{1}" title="Install">
    Run the installer.
  </Step>

  <Step n="{2}" title="Start">
    Launch the development server.
  </Step>
</Steps>

Rendered as:

1. Install

Run the installer.

2. Start

Launch the development server.

See MDX Components for the full component reference.


Hiding content from rendering in CamelMind

Sometimes you may want to keep notes or draft content in your documentation source without publishing itβ€”for example, documentation for an upcoming feature, content that is still under review, or reminders for yourself.

To prevent CamelMind from rendering the content, wrap it in an MDX comment.

mdx
{/*
This is hidden content that will not show on the rendered site.
*/}

CamelMind ignores everything inside the comment block when building your documentation, preventing it from appearing on the published site. Once the information is ready, remove the comment markers to make it visible in your documentation.


Organizing content folders in CamelMind

A typical CamelMind documentation project organizes source files into thematic directories within content/:

text
content/
β”œβ”€β”€ getting-started/
β”‚   β”œβ”€β”€ introduction.mdx
β”‚   └── installation.mdx
β”œβ”€β”€ guides/
β”‚   β”œβ”€β”€ writing-content.mdx
β”‚   └── navigation.mdx
└── reference/
    └── configuration.mdx

These folders are only for organization. Unlike most documentation frameworks, CamelMind does not derive URLs from the file system. Instead, nav/nav.yml maps each page to a URL, making it easy to reorganize your content without breaking links.

August 21, 2026
Was this page helpful?