The Navigation Builder lets you define your sidebar structure through a visual, drag-and-drop interface. It lives inside the File Explorer as a dedicated Navigation tab, alongside the Files and Media tabs.
Navigation is organized into three levels:
You can reorder items at every level by dragging their handles:
One section should have an empty slug (""). This is the default/root section that serves pages at the root URL. Pages not assigned to any other section belong here.
You can also define sections purely through page frontmatter without using the Navigation Builder. Add a section field to your MDX frontmatter and Doccupine will create sections automatically. See the Sections documentation for details.
Within each category, click Add files to open a popover that lists available MDX files not yet included in the navigation. You can:
To remove a link, click the delete button next to it.
The toolbar includes a Regenerate button that rebuilds the entire navigation tree from your MDX files' frontmatter (category, categoryOrder, and order fields). A confirmation modal appears before any existing manual navigation is replaced.
Regenerating from files replaces your current navigation structure. This cannot be undone.
If you don't configure navigation at all, Doccupine automatically builds your sidebar from page frontmatter. The Navigation Builder is only needed when you want explicit control over the order and grouping.
When you save, the Navigation Builder writes two files to your repository as pending changes:
navigation.json - the category and link structure for each sectionsections.json - the list of sections with their labels, slugs, and directoriesArray format for single-section sites (navigation.json):
[
{
"label": "Getting Started",
"links": [
{ "slug": "getting-started", "title": "Quick Start" }
]
}
]Object format for multi-section sites (navigation.json):
{
"": [
{ "label": "General", "links": [{ "slug": "", "title": "Introduction" }] }
],
"api": [
{ "label": "Auth", "links": [{ "slug": "api/auth", "title": "Authentication" }] }
]
}Sections (sections.json):
[
{ "label": "Docs", "slug": "" },
{ "label": "API Reference", "slug": "api" }
]