Building Websites With LLMS – Jim Nielsen’s Blog

March 12, 2025

And by LLMS I mean: (L)ots of (L)ittle ht(M)l page(S).I recently shipped some updates to my blog. Through the design/development process, I had some insights which made me question my knee-jerk reaction to building pieces of a page as JS-powered interactions on top of the existing document.

With cross-document view transitions getting broader and broader support, I’m realizing that building in-page, progressively-enhanced interactions is more work than simply building two HTML pages and linking them.I’m calling this approach “lots of little HTML pages” in my head. As I find myself trying to build progressively-enhanced features with JavaScript — like a fly-out navigation menu, or an on-page search, or filtering content — I stop and ask myself: “Can I build this as a separate HTML page triggered by a link, rather than JavaScript-injected content built from a button?”

Source: Building Websites With LLMS – Jim Nielsen’s Blog

For years Web development has tended toward over engineering, and Byzantine solutions to what could be simple problems. The SPA architecture is perhaps them most elaborate of these–a response to the slick interactions and navitgation of native mobile apps, we built a complex stack of technologies.

But a lot of this over engineering may no longer be needed, with new technologies like View Transitions. Here Jim Nielsen explains how he replaced complex JavaScript enabled navigation and interaction with simple page loads, which then animated with View Transitions give a modern experience.

At Conffab we use for the most part a pretty traditional MPA approach. When you visit a conference page or a presentation page, a speaker page, they are all individual, stand alone, HTML pages. We have used the simplest possible View Transitions to animate the navigation between them for a long time now–though originally the effect was one apparent only in nightly versions of Chrome then in Chrome then Technology Previews of Safari and now in Safari, though still not in Firefox.

But that’s ok–it’s progressive enhancement at its finest. We sprinkle the tiniest amount of CSS


@view-transition {
  navigation: auto;
}

on our and now animations when we move between them are smooth.

Interested? Check out the talks and links to other articles on View Transitions on Conffab.