Generate Pagefind search index at build time and re-organise overview page content.
Summary
Two independent changes:
- Fix broken site search — generate the Pagefind index at build time.
- Rework the Overview page into a genuine site map, and tidy the Architecture & Governance pages.
1. Search index (build fix)
Nextra 4's search widget fetches /_pagefind/pagefind.js at runtime, but
nothing ever generated that index — not the build, not CI — so search returned
nothing on both local builds and the deployed site.
- Add
pagefindas a devDependency. - Add a
postbuildscript (pagefind --site out --output-subdir _pagefind). npm runspostbuildautomatically afterbuild, so CI (which runsnpm run build) picks it up with no.gitlab-ci.ymlchange.
Verified locally: 67 pages indexed; /_pagefind/pagefind.js served and search
returns results.
2. Content rework
Overview (app/overview/page.mdx) — rewritten
Was a technical deep-dive that overlapped with the Architecture (and, to a lesser extent, Governance) sections. Now a genuine overview of the site:
- Short intro ("the document is the data")
- Why it matters — leads with the business-case scale hook; links to Use Cases, Business Cases, methodology, evidence
-
The verifiable trade documents — all 21 specs grouped into Trade ·
Transport · Financial · Regulatory (KTDDE / UN/CEFACT Web Vocabulary
categories; "commercial" = "trade"), each linking to its
/docs/page, with the KTDDE 36-document coverage goal - Architecture overview → links into the section
- Governance overview → links into the section
- Implementation, testing & registering → links to guidance, conformance, register
- References
Duplicated Technical Architecture / Trust Registries content was dropped (the Architecture page covers it better).
Architecture (app/architecture/page.mdx)
- Preserved the one piece of unique content from the old Overview — the Normative Design Rules (issuer identification) — by moving it here.
Governance (app/governance/page.mdx)
- Replaced the empty stub (three bare headings) with a brief overview: Terms of Reference, Participation (links to Join / Meetings / Partnerships), and Decision Making (links to Metrics).
Files changed
-
package.json,package-lock.json— pagefind dependency + postbuild script -
app/overview/page.mdx— rewritten -
app/architecture/page.mdx— added Normative Design Rules -
app/governance/page.mdx— fleshed out from stub
Notes for reviewers
- The
ld-link-resolutionCI job will show its usual non-blocking⚠ ️ (ENOTFOUND unvtd.unece.org) — the runner has no outbound internet; the URLs are healthy publicly. Not related to this MR. - cSpell may flag domain terms (UNVTD, CEFACT, KTDDE) and British spellings (digitalise, decentralise) — consistent with existing site content.