Top navigation
The site's one global bar: who this is, where to go, and where they are.
Specimen
clearnightcloudfogdrizzlerainsnowstorm
Props
| Prop | Type | Note |
|---|---|---|
| label | string | Accessible name for the link group. Defaults to "Primary" — only this page passes it. |
Use it for
- Mounted exactly once, in root.tsx, so every route gets the same bar.
- The dotted underline on the city means inspectable, not navigable. It is the only underline left in the bar, which is what lets it carry that meaning on its own.
- The page you are on is marked by the same travelling indicator the Tabs component uses — one <Indicator>, shared. It is a drawn element rather than text-decoration because the roughening filter may never touch text, so an underline could only ever be crisp.
- Reading order is one phrase then one aside: place and local time share a comma because they answer the same question, and the sky follows after a wider gap because it is a separate fact.
- Editing what it says: the name, city, coordinates, timezone and contacts are OWNER in lib/site.ts, and the links are PRIMARY_NAV in lib/nav.ts. Neither is in the component.
Do not use it for
- Making it sticky. The Ruler owns the top edge, and a second pinned bar takes a fifth of a phone screen before any content appears.
- Rendering the clock or the temperature on the server. Every content route is prerendered, so both would be frozen at build time.
- Moving the visitor lookup to page load. It is the only third-party request on the site, and tying it to a deliberate gesture is what keeps it defensible.
- A second instance on a page — two banner landmarks is worse than none.