Remix.run Logo
keepamovin 3 hours ago

I love what the CERN team did here visually with the NeXT UI. Rebuilding a historical browser inside a modern one is a fun rabbit hole, but man, it is the same technical wall to hit every time: iframes.

You build this beautiful retro UI, you wire up the address bar, and then you try to load a modern site and just hit a wall of CORS, X-Frame-Options, and CSP blocks. Which, tho is probably precisely things should work. Otherwise people arbitrarily iframe the open web opening up a massive clickjacking-pocalypse. It makes total sense for security....sigh.

But I sitll wanted a way to get around it to capture that 90s nostalgia (tho NeXT and this browser were actually from the late 80s), the real open web inside a retro recreation not just a crippled, iframe-blocked imitation. Or "everything links to archive org" stuff.

To make that work, I had to make a custom embedder API. It basically pipes a fully isolated remote Chromium instance right into the retro shell through an iframe in a custom element. The engine is real, and it respects the native security boundaries because the browser is physically isolated, but it wears that heavy 90s UI so you get the 90s feel.

If you want to mess around with a different flavor of 90s nostalgia that can actually surf the modern web, I put up a live version here: https://win9-5.com/demo. Sound on for the retro modem dial-up elevator music. The non-graybeards may never have experienced the modem's mating call in the wild.