Engineering Lab 06

Scaling dozens of documents through one route system

Question: Can a large indexed documentation library grow without creating a custom React page for every document?

Finding: The current documentation system renders dozens of MDX guides and topic hubs through one dynamic route and one shared content model.

Evidence source

What this note is grounded in

These labels identify the implementation or verification surface used for the observation. They are not a claim that the result generalizes to every website.

01

MDX content directory

02

Dynamic docs route

03

Taxonomy-driven hubs

A large content library becomes expensive when every new page requires a new implementation.

The current documentation architecture is designed to make the opposite true.

A new technical guide should primarily be an editorial task.

The route, metadata, schema, navigation, sitemap behavior, and page layout should already know what to do with it.

The source documents

Individual guides live as MDX files.

Each file carries structured frontmatter for fields such as slug, title, description, category, order, and tags.

The body stays readable as a document.

That lets the editorial source remain much simpler than the application rendering it.

The loader creates the document model

A shared loader reads the MDX directory, parses frontmatter, resolves taxonomy information, attaches modification dates, and returns a predictable document object.

The route does not have to understand the filesystem details.

It asks for a document by slug or asks for the complete collection.

That separation is useful because the same collection can power several systems.

One route handles leaves and hubs

The documentation uses a dynamic /docs/[slug] route.

That route can resolve the slug in two ways.

If it matches a topic category, the route renders a category hub.

If it matches a document, it renders a technical article.

The same route therefore supports the editorial hierarchy without adding a separate React page for every topic.

Static params turn the content inventory into routes

During the build, the route generates static parameters for both documents and category hubs.

That gives Next.js the route inventory ahead of time.

The pages can be generated as production HTML instead of waiting for a browser request to construct the content.

This is a good fit for documentation because the material changes through deployments, not every second.

Taxonomy is data instead of markup

The six topic hubs are defined in a taxonomy file.

The taxonomy describes:

  • public category name
  • accepted aliases
  • description
  • editorial introduction
  • featured documents
  • service pathway
  • proof pathway

The UI reads that configuration rather than hard-coding six separate category pages.

That means changing the editorial structure does not require duplicating page templates.

Navigation follows the same source

The sidebar, category inventory, previous and next navigation, related-document logic, and root docs page all use the same document collection.

The page count can grow without manually editing a master HTML list.

That is important because manual indexes become stale quickly.

Sitemap behavior follows the inventory too

The sitemap reads the documentation collection and taxonomy.

A new valid guide can therefore become a route and a sitemap entry from the same source.

That reduces the chance that a page exists publicly but is forgotten in the search inventory.

The build checks the editorial contract

Scaling content also creates quality risk.

The documentation audit checks the things that become harder to notice as the page count grows:

  • duplicate slugs
  • duplicate titles
  • duplicate descriptions
  • unknown categories
  • broken documentation links
  • missing structural fields
  • accidental body H1 elements
  • extremely thin pages
  • invalid featured references

The system also enforces the house rule against em dashes.

The point is not the punctuation rule itself.

The point is that editorial conventions become executable as the library grows.

What this architecture does not solve

A scalable route system can make it dangerously easy to publish weak pages.

Technical scalability is not editorial permission.

The repository can generate hundreds of URLs, but the editorial standard still requires each page to own a distinct question and carry enough substance to deserve indexing.

That is why the taxonomy and audit exist alongside the loader.

Why this is useful beyond documentation

The same architecture appears in service pages, location systems, portfolio entries, and article libraries.

Repeated content types benefit from a shared renderer and structured source.

The route should encode what is common.

The content record should encode what is unique.

That is the core idea behind dynamic route families instead of copied pages.

Related documentation

Go from the observation to the standard

MDX & Content Systems

The connectrader MDX content standard

How we structure long-form website content so writers can work in readable documents while the application still gets reliable metadata, routing, images, schema, and build-time validation.

Architecture & Engineering

Why we build route families instead of copying pages

How one tested route template can power services, locations, articles, products, case studies, and documentation without turning every new page into a new maintenance problem.

MDX & Content Systems

How an MDX file becomes a production page

A step-by-step look at the path from a plain MDX file in the repository to a static route with metadata, schema, navigation, sitemap coverage, and a deployable production artifact.