Story: Replace site navbar with a structured menu
Table of Contents
This page documents a story in Sprint 20. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
Goal
The flat nav bar in ores-build-site.el currently lists twelve items in a
single row. As the number of sections grows, the bar becomes cluttered and
new pages cannot be exposed without making it worse. Replace the flat row
with a hierarchical dropdown menu — existing items reorganised into logical
groups, no page content changed — so future sections can be added cleanly.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent sprint | Sprint 20 |
| Now | Nothing. |
| Waiting on | Nothing. |
| Next | Nothing. |
| Last touched | 2026-06-09 |
Acceptance
site-html-preambleinores-build-site.elis replaced with a dropdown menu structure using semantic HTML (<ul>/<li>withhoverorfocusdriven submenus).- All existing nav items (Home, Orientation, Product, Architecture, LLMs, Manuals, Downloads, Agile, Developer, Roadmap, Knowledge Graph, GitHub) are present under the new menu, reorganised into logical groups.
- Dropdown CSS lives in
assets/style.css; no inline styles added. - The graph-page injection in
ores-inject-site-navis updated to use the same markup. - Site builds and deploys cleanly (
cmake ... --target deploy_site). - Menu is usable without JavaScript (CSS-only
:hover/:focus-within).
Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Scaffold story: Replace site navbar with a structured menu | DONE | 2026-06-07 | 2026-06-07 | Create story folder, wire sprint table, fill in all scaffold docs, raise scaffold PR. |
| Design and implement the site navigation menu | DONE | 2026-06-07 | 2026-06-07 | Replace flat site-html-preamble with a dropdown menu; update CSS and graph-page injection. |
| Merge the Agile menu into Developer and reorder for new users | DONE | 2026-06-09 | 2026-06-09 | Fold the Agile group into Developer; drop the agile recipes link; rename Overview→Agile, Board→Agile Board; reorder for new users. |
Decisions
Out of scope
- Adding new pages or changing page content.
- JavaScript-driven menus or framework dependencies.
- Mobile hamburger menu (nice-to-have; revisit if CSS-only proves insufficient).