TheDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/apursley2012/y2k-web/llms.txt
Use this file to discover all available pages before exploring further.
Navbar is a sticky top navigation bar that anchors itself to the top of the viewport as you scroll (sticky top-0 z-50). It uses the bg-win-gray background and a border-b-2 border-black shadow-md underline to mimic the look of a classic Windows 98 title bar row. Each navigation link is rendered as a raised button using Tailwind utility classes, and the active link flips to a sunken/inset appearance — exactly like a depressed toolbar button in Win98.
Nav Link Visual States
Every link in the navbar cycles through four distinct visual states driven by Tailwind classes and React Router’s active-route detection:| State | Classes Applied | Effect |
|---|---|---|
| Active (current route) | bg-white shadow-win-in text-black | Appears pressed/inset — the classic Win98 “button held down” look |
| Inactive | bg-win-gray shadow-win-out text-black | Raised button appearance with an outset shadow |
| Hover | hover:bg-gray-200 | Subtle background lightening on mouse-over |
| Active press | active:shadow-win-in | Inset shadow while the mouse button is held, giving tactile click feedback |
font-pixel text-[10px] uppercase tracking-wider for the chunky retro pixel-font label style.
Navigation Items
The nav links are declared as a static array of{ path, label } objects. To add, remove, or rename a link, edit this array directly in the Navbar component:
Active State Detection
The Navbar usesuseLocation() from React Router to read the current pathname on every render. Each item’s path is compared against the current pathname; when they match, the active classes (bg-white shadow-win-in) are applied instead of the inactive defaults:
<NavLink> from React Router also exposes its own isActive prop in its className callback, you can alternatively use that directly if you prefer to keep the active logic inside the component API rather than comparing pathname manually.