Multi-page scaffold

One engine, N pages.

This site is a live demonstration of the multi-page architecture: one shared, versioned engine injects the header and footer on every page, sets the active nav state, and renders per-page content from a PAGES object.

Browse components View patterns

The scaffold

How the scaffold works

Each page is a real .html file with a <body data-page="..."> attribute. The shared header and footer are injected by the versioned engine, so they are identical across pages by construction. The active nav link gets aria-current="page".

Declare the page

<body data-page="components"> tells the engine which content object to render.

Inject shared chrome

buildHeader() and buildFooter() render the same nav and footer on every page.

Render content

data-copy and data-* hooks pull strings and arrays from the PAGES object.

Set active state

aria-current="page" marks the current nav link automatically.

Component

Profile grid

A reusable component for people, contributors, speakers, authors, or account profiles.

AR

Alex Rivera

Strategy

MC

Morgan Chen

Design

JT

Jordan Taylor

Engineering

SK

Sam Kim

Operations

Component

Contact points grid

A reusable component for locations, departments, channels, regions, or availability windows.

Primary channel

General questions and first contact

Support channel

Existing requests and follow-up

Resource center

Documentation and self-service material

Pattern

Detail-page pattern

Each summary card can link to a query-driven detail page (detail.html?item=slug) rendered from one neutral content object — one template, many entries.

Foundation pattern

A summary card links to one neutral detail entry.

View →

Expanded pattern

A second slug proves the template is content-driven.

View →

Shared detail template

detail.html?item=slug renders from a neutral DETAILS object.

View →