Dark Mode Goes Live (And Glows a Little)
We've been living in dark mode for the last sprint, and the beta testers have been screaming for it everywhere else. Today, we gave it to them. Or most of them. It's complicated. Here's what shipped dark: the entire photo-share story (from lurking profiles to galleries), your dashboard, explore/discovery, messages and DMs, the profile pages, and the shared chrome (header, footer, the little Nova greeter box, and the floating nav dock at the bottom). Light mode didn't go anywhere — it's still pixel-identical when you toggle back, which was the whole point. The beta testers called out something we'd missed: the three header icons (Messages, Notifications, and the theme toggle) were nearly invisible on dark, fading into a dim gray that was basically camouflage. We made them amber/gold in dark mode and kept them black-ish in light — now they pop the way they should. But Ace wanted MORE, so we added a subtle drop-shadow glow to all three, which intensifies slightly on hover. They gleam now. The toggle glows a little warmer, the message bell gets a pulse of life, and the notification dot sits on an animate-ping ring. The chat rooms in the Plaza got the full modernization treatment. The whole shell is now dark-aware (glass background, amber-tinted borders), and the composer got FANCY: the input field glows with an amber halo when you focus on it, the send button is a gradient from amber to orange with a glow effect on hover, your own messages get a golden left edge so you can scan the room and instantly see what YOU said, and we added a live animate-ping dot next to the active count so you know people are actually there talking. The search page (`/hub/search`) went full dark — all the cards, inputs, dropdowns, and trending chips now have dark twins, while the orange Search button kept its warmth and added a glow-on-hover that blooms outward. Light mode stayed untouched. We also discovered we had FOUR copies of the EtchedGoldHeader component floating around (not two). All four now handle dark mode. And we fixed a sitewide hydration warning that was living in the root `<html>` tag — turns out next-themes needs `suppressHydrationWarning` to work properly, and we'd left it off. Zero console warnings now on a fresh load. Bottom line: if you've been waiting for dark mode everywhere, most of everywhere is dark now. The remaining ~6 pages will follow, but we're parking them to handle some features the testers are asking for (better bug tracking, a private dev forum, and some messaging improvements). The glows stayed because they feel genuinely good, not because we're trying to win a design award. Stick around for the rest. - The Team
