One shell, everywhere
Skydex draws its pages two different ways. Most of what you reach from a search result is baked ahead of time: a city page, a country page, a news post. The rest, the parts that need your session, are drawn in the browser when you open them. That split is an implementation detail, and it should never have been visible. It was.
The header was written twice, once for each renderer, with a comment on both copies asking whoever edited one to remember the other. The footer was written twice as well, with the same note. Nobody remembers. So the two drifted, and which links you saw depended on which kind of page you happened to be on. Today they are one file. Both renderers read it, the markup they produce is identical down to the class names, and a harness checks that it stays that way.
Four items, then More
The navigation carried eleven links and scrolled sideways on a laptop. Several people told us the interface felt complicated, and when we looked at who was saying it, they were not the people the long bar was built for. Some had come to look at the game. Others had connected a receiver and were reading about their own antenna. Of eighteen people running a station, nine had never once pressed Take off. One of them came back sixteen times without entering the world at all.
A bar with eleven destinations does not help either of them. So it now carries four: Live, Map, Explore, ADS-B. Those are the first four questions anybody asks here. Everything else moved one click away under More, and the footer at the bottom of every page still lists all of it in full, grouped.
On a phone the four fold into that same menu, because the bar has room for the menu button, the messages, the bell, your avatar and Play, and not much else. It used to squeeze the links down to nothing instead, which meant the navigation quietly had no links in it at all below a certain width. That is fixed too.
The icons reach the rest of the site
Last week the feed, the rooms and your messages got their own buttons in the header. They only existed on the session-rendered pages. On roughly fifteen hundred baked pages there was a bell and nothing else, which is why a new message looked like it arrived at the bell rather than at the envelope: on those pages there was no envelope.
Now there is. On a baked page the three are links rather than panels, and a small script paints their counts. That is a deliberate difference. The bell has a plain twin on those pages because its panel is a list; the feed, the rooms and your conversations are full applications, with infinite scrolling, a composer, editing, delivery marks. Rebuilding those a second time would have produced two versions free to disagree with each other. Linking to the real thing does not.
That needed somewhere for the rooms link to land, so the global room has a page of its own now, at /chat. It is the same room the panel shows, drawn by the same component, with the same unread mark. Open it in either place and you are in one conversation, not two.
A couple of things that were quietly broken
Measuring the header turned up two pages, direct messages and airports, that were drawing the whole shell twice: two navigation bars and two breadcrumb trails, stacked. Both are single now.
The messages page also answered with a 404 status while rendering perfectly well. That was harmless while the only way in was a notification link. It is not harmless now that every page on the site points at it, so it has a proper route, still kept out of search results where it belongs.
If the header looks shorter, that is the whole idea. Everything is still there.