Valkyrian Labs logo

Sidebar Helper

Build deterministic sidebar data for a generated docs set.

Sidebar Helper

The route adapter returns sidebar data for docs routes. PayloadMarkdownDocsPage uses that data automatically, and custom renderers can read resolved.sidebar from a resolved docs route.

Sidebar items are built from generated docs records and sorted deterministically by:

  1. order
  2. sourcePath
  3. route

The sidebar data excludes archived docs and docs hidden from navigation.

Labels

Sidebar labels use:

  • override nav title
  • doc navTitle
  • doc title
  • source path fallback

Generated Tree

The tree is derived from source paths and routes. It is data, not a required UI component, so your app can render it however it wants.

1import { resolvePayloadMarkdownDocsRoute } from '@valkyrianlabs/payload-markdown-docs/next'2 3const resolved = await resolvePayloadMarkdownDocsRoute({4  payload,5  slug,6})7 8if (resolved?.type === 'doc') {9  console.log(resolved.sidebar)10}
Why source paths matter

Source paths are stable for agents and developers. They also make generated navigation predictable even when title text changes.