Building progressively enhanced forms using Htmx

A simple web form guide turned into a mini comment-section roast over broken video and coding purity

TLDR: The article shows how to build a web form that still works even if JavaScript is turned off, which matters because it makes sites more reliable for real people. Commenters, though, stole the spotlight by roasting a broken demo video and arguing over whether the setup is smart simplicity or needless pain.

What should have been a calm, practical explainer about making web forms work with or without JavaScript somehow turned into a tiny but delicious comment-section drama. In the post, the developer walks readers through building a bookmark-editing form with extra interactive features when JavaScript is on, while still keeping everything usable when it’s off. In plain English: the form is designed to be sturdy first, fancy second — and that old-school approach won plenty of silent nods from people tired of websites collapsing the second a script hiccups.

But the real spark came from the reactions. One commenter immediately derailed the serious engineering vibes with the most brutally relatable complaint possible: the demo video appeared totally broken, showing 0:00 to 0:00 like a ghost clip that never existed. That gave the whole thread an accidental sitcom energy — a post about polished usability getting heckled by its own missing footage.

Then came the classic internet split: is this careful approach elegant, or is it making life harder than it needs to be? Another commenter pounced on the author’s worries about hard-to-maintain page updates, arguing that the real villain isn’t the method at all — it’s using clunky text-based templates. Translation for non-coders: one side says this kind of setup can get messy, the other says, skill issue — use better tools. So yes, beneath the humble form tutorial lurks a familiar online showdown: simplicity versus purity, practicality versus programmer pride, and commenters absolutely refusing to let a technical post stay boring.

Key Points

  • The article describes a bookmark-editing form for ties.pub that uses progressive enhancement so it works without JavaScript and gains extra interactivity with htmx.
  • A main implementation concern is handling transient state—user input that has not yet been persisted but must survive server roundtrips.
  • The article uses form values as a primary mechanism for preserving transient input by having the server return submitted values in its response.
  • The author notes limitations of form-value-based state handling, including loss of values on reload and separation of state across multiple forms on the same page.
  • The post explains that query parameters, URL paths, GET forms, and submit buttons’ `formaction` attributes can be used to preserve or vary state and navigation behavior.

Hottest takes

"Video doesn't seem to be rendering" — arthurcolle
"0:00 and 0:00 as start and end times" — arthurcolle
"This is almost always because of using a string-based templating system" — yawaramin
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.