Please Don’t Use HTMX

Published: (January 5, 2026 at 09:43 AM EST)
3 min read
Source: Dev.to

Source: Dev.to

What People Say About HTMX

When people talk about HTMX, they usually say things like:

  • “You don’t need a frontend framework anymore”
  • “Just write HTML on the server”
  • “Less JavaScript is better”
  • “It’s simpler and cleaner”

And honestly, that sounds great. If you are tired of complicated tools, HTMX feels like a breath of fresh air. So I tried it.

The First Problem: Seeing Changes Is Slow

When I use modern frontend tools, this is what happens:

I save my file → the screen updates right away

With Go + HTMX, it usually feels like this:

I save my file
→ I stop the server
→ I start the server again
→ I refresh the browser
→ now I see the change

That’s a lot of steps for one tiny change.

Yes, there are tools that can help:

  • tools that restart the server for you
  • tools that refresh the browser for you

But you still have to set all that up yourself. Modern frontend tools already do this for you.

HTMX workflow illustration

The Tailwind Problem (Why My Styles Don’t Show Up)

While styling with Tailwind, I prefer to build only the classes I actually use in the specific project to avoid packaging the full CSS bundle. But Tailwind only knows about styles that already exist at the time it runs. After the initial build, further changes may be prone to containing undefined CSS classes.

With HTMX:

  • HTML is split into many small pieces
  • Some parts only appear sometimes
  • New styles are added later

So this happens a lot:

“Why doesn’t my new style work?”

The answer is usually:

  • Tailwind didn’t see that style
  • You forgot to rebuild the CSS
  • Or the style only appears sometimes

You can fix this, but you must:

  • run Tailwind in watch mode
  • configure it carefully
  • remember special rules

That’s more thinking than people admit.

HTML Starts Simple… Then Gets Complicated

HTMX makes simple things very nice. A small button looks clean and easy. But real apps are not small. Real apps have:

  • loading states
  • error messages
  • permissions
  • conditions
  • reused pieces

So your HTML slowly becomes:

  • longer
  • harder to read
  • full of logic

You didn’t remove complexity; you just moved it into HTML. That’s not bad—it’s just something to know.

“The Old Web” Wasn’t Always Better

People say HTMX feels like the “old web”. The old web:

  • refreshed the whole page a lot
  • felt slow
  • still used JavaScript when things got hard

HTMX isn’t the old web. It’s something new that mixes old ideas with new ones, and mixing things always comes with trade‑offs.

People Recommend HTMX Too Quickly

One thing that bothers me is this pattern:

  1. You say: “I’m struggling with this problem.”
  2. Someone replies: “Just use HTMX.”

No questions. No context. No thinking. HTMX is not magic. It’s a tool, and tools are good only when they fit the job.

Why I Don’t Use HTMX (Yet)

I don’t avoid HTMX because it’s bad. I avoid it for now because:

  • I like seeing changes instantly
  • Restarting things breaks my flow
  • HTML gets messy faster than expected
  • Styling takes more care than advertised

That doesn’t mean HTMX is wrong; it just isn’t always the best choice.

When HTMX Is Actually Great

HTMX shines for:

  • forms
  • dashboards
  • admin pages
  • internal tools
  • simple business apps

If that’s what you’re building, you might love it. If you’re building:

  • very interactive pages
  • fancy animations
  • fast‑changing designs

You might not. And that’s okay.

The Real Point

This post is not saying “Don’t use HTMX.” It’s saying:

“Please stop acting like HTMX is the answer to everything.”

I’ll probably use HTMX again one day—just not because someone told me I should.

Back to Blog

Related posts

Read more »

Web development is fun again

Article URL: https://ma.ttias.be/web-development-is-fun-again/ Comments URL: https://news.ycombinator.com/item?id=46488576 Points: 53 Comments: 41...