Field note · October 12, 2026

Every page works without JavaScript

Turn JavaScript off and this site still works. The whole course, every article, every dataset page, every pattern. Nothing is client-rendered.

1 min read ·Data platform ·engineering practice

Turn JavaScript off and this site still works. The whole course, every article, every dataset page, every pattern. Nothing is client-rendered.

What JavaScript adds: search, the theme toggle, progress tracking, and the tools. Those genuinely need it. Everything else is HTML that was already correct when it left the build.

The test is easy to run and worth running: disable scripting, load a lesson, read it. If the page is blank, the content was never really on the page.

It also changes how the site fails. When search cannot load, the pages are still there and the navigation still works — the site is worse, not broken. A client-rendered site with the same failure shows a spinner.

There is a discipline cost. Every interactive feature has to be built as an addition to something that already works, which rules out a few designs and makes others more awkward. The course progress tracker is the clearest example: it renders as a plain list of links and gains the completion state afterwards, rather than being a component that fetches state and then renders.

Progressive enhancement is not nostalgia. It is the difference between a slow network degrading your site and breaking it.