Top
Best
New

Posted by EdwinHoksberg 20 hours ago

Shopify acquires Tailwind(tailwindcss.com)
1034 points | 395 comments
simonw 20 hours ago|
Here's some context on the impact AI had on the Tailwind Labs business model from January: https://github.com/tailwindlabs/tailwindcss.com/pull/2388#is...

> But the reality is that 75% of the people on our engineering team lost their jobs here yesterday because of the brutal impact AI has had on our business. [...]

> Traffic to our docs is down about 40% from early 2023 despite Tailwind being more popular than ever. The docs are the only way people find out about our commercial products, and without customers we can't afford to maintain the framework.

dlisboa 19 hours ago||
I made this point at the time but Tailwind Labs' business model shouldn't exist. It irks people because they wanna blame AI for it but they were coasting and should be happy it lasted this long.

Tailwind's business model existed due to a massive inefficiency in the frontend industry not being able to come to terms with CSS or native components. They surfed the wave of JS frontends becoming ever more complicated. If it wasn't AI and just a human awakening to that fact, realizing that the complexity of modern frontends and Tailwind are not an absolute necessity, they'd have lost business just the same. There are dozens of different ways of writing frontends that have nothing to do with Tailwind.

Providing ready-made UI components and templates has never been a million-dollar business, nor should it be.

atonse 19 hours ago|||
I don't agree with "nor should it be" - the market decided it was clearly needed. And this isn't unique to Tailwind. For decades, companies in many ecosystems (like .NET, JS, etc) have made lots of money selling component libraries that save developers and companies a lot of time. And I even bought UI.sh in April, and it really was great until the models just natively got much better.

I happily paid for Tailwind UI because it was worth it. I paid for ui.sh and got plenty of my $130 (or whatever) value. The market spoke in a good way initially, and now it's sending a different message.

They've just got to do the next thing, which is find an AI-resistant steward of the project now.

bdcravens 18 hours ago|||
"nor should it be" is connected to "being worth millions". It's not that it isn't worth money, but it's more of a lifestyle business than the sort of thing that will drive a tech company with employees, marketing, and conference budgets.
ryanbrunner 17 hours ago|||
I think if you said "couldn't be a venture backed startup", I'd 100% agree with you. Can't support employees or a marketing budget is a much lower bar, and I think that's perfectly achievable by something like Tailwind (or I guess was prior to AI)
abirch 11 hours ago||
I’m a die hard engineer, yet when I see Apple, Microsoft, and Google marketing: it makes me realize the importance of marketing.
matsemann 16 hours ago||||
There are several graphing libraries that have been businesses for years. Like Highcharts. A frontend framework used by millions and millions certainly has some value to loads of people.
coffeebeqn 17 hours ago||||
I’m not sure what their valuation was but single digits millions sounds totally reasonable for a company you’re describing. Just to hire 10 engineers you’ll need to be in low millions
bdcravens 13 hours ago|||
I don't want to diminish the work that any developers do, but a headcount of 10 seems high to me. (Unless some of those are simply "support engineers" who do nothing but support paying customers, but that would go up and down with revenue)
win311fwg 11 hours ago|||
To hire 10 engineers you only need millions in yearly revenue. And millions in revenue does not imply that the business is worth millions. It very well, quite easily, could be worthless.
iohvvbhdyh 18 hours ago||||
Indeed. I saw their job ad just months before this with full remote 300K salary.
beezlewax 4 hours ago||
What does it being remote have to do with anything?
Valodim 2 hours ago||
It changes the cost of living context of the salary. So, a lot.
djmips 16 hours ago|||
Millions is a very modest business these days
wongarsu 19 hours ago||||
Just for reference, in the .NET ecosystem there are multiple vendors selling UI component libraries for sums ranging from lower three digits to upper three digits per dev, per year. This was generally considered good value (might no longer be great value post-AI)
eitally 18 hours ago|||
As an engineering leader back in the day (2000-2015) I considered it terrific value to license Telerik and others. In fact, it looks like Progress has acquired a large catalog of the most common .NET dev tools over the past ten years.
everfrustrated 17 hours ago|||
Problem was tailwind had a very weak component library. I'd have been happy to pay for a more expansive set of components.
joleyj 19 hours ago||||
I think that “lots of money” needs to be put in perspective when thinking about software that’s used by developers. When you compare the size of the market for these kinds of tools compared to a truly massive market for something like an office suite, it looks pretty puny.

Developers are also very fickle and the one constant is change. Sometimes it seems like change for changes sake alone.

I’m not saying that any businesses easy just that it seems to me after seeing a lot of companies come and go, but this is one of the more difficult markets to capitalize on.

PaulHoule 15 hours ago||
It’s hard to name a more pathological market than office suites. You have Microsoft which is lackadaisical about the subject, like maybe they think Office is a place to stuff with thoroughly unwanted AI features. The rest of the market is German zealots who spend all day with bash and emacs who lobby legislatures to subject public servants to off-brand office suites and then the public sector unions go on strike to get Microsoft Office back.

Bundling is one reason who can’t have nice things. Like in my opinion Excel is a lot worse than the others but if customers are thinking about a “suite” they are still going to buy Office to get Word and PowerPoint and can’t save money by switching to a different CSV wrangler or financial analysis tool.

shermantanktop 13 hours ago||
Funny, my opinion is the opposite. Excel is a much better spreadsheet than Word is a word processor or than PowerPoint is a presentation tool.

Of course it’s got quirks and unfortunate relics of its long history, but I reach for it willingly, and I can’t say that about the rest of the Office suite.

Pedro_Ribeiro 18 hours ago||||
Hey do you have any opinion on the current utility of ui.sh? I wanted to buy it but I'm a bit wary of it just not being useful and they don't have a preview of a single skill.
what 7 hours ago||
Wait, you’re thinking about buying “skills” instead of actual components that you can just use? This seems insane to me.
win311fwg 19 hours ago||||
> I happily paid for Tailwind UI because it was worth it.

The business was worth something. But, as the earlier comment questions, was it worth millions? Or was that the free money, tech hype talking? Maybe in a more normal market it would have only been a simple mom and pop.

00ze 19 hours ago||||
"The market" for Tailwind only existed due to ignorance and obfuscation fueled by hype for web dev jobs.

Completely artificial market built on propaganda and low interest rate money printing. Same as the rest of SaaS. Nothing about the tech industry since the '08 crash has been organic investment. Was 100% collusion between government and private interests to manipulate public opinion.

> They've just got to do the next thing, which is find an AI-resistant steward of the project now.

Good luck with that:

https://www.openui.com/blog/oui-1

Aside; all the leaked emails, chats, and going back further in time, telegrams, letters, travel logs on display in court yet the myth the economy is an organic free market this whole time persists

Such belief is nought but a quirk of biology that allowed humans to latch onto the idea Benevolent but Punitive Sky Wizard watches out for them; total cope. In Wealth of Nations Adam Smith called it the "invisible hand" and later came to realize he was wrong. He reconsidered and concluded the avarice of man will not be stopped by philosophy of national unity.

atonse 15 hours ago|||
No, I didn't mean ai-resistant as far as "don't need coding agents" - I use agents to do all my coding now. I'm saying, AI-resistant in the sense that a company like Shopify isn't going anywhere even in the AI world. If anything, they will thrive with more AI-assisted shops coming online.

That gives the Tailwind folks a more steady stream of income.

vlyan 14 hours ago|||
this. leftpad as a service bullshit SaaS companies somehow raising millions was a temporary insanity driven by ZIRP and incestuous VC money currents. we see the same thing happening now with companies whose products are paper-thin vibecoded wrappers over someone else's models.
sneak 9 hours ago|||
The market didn’t decide it was needed, the users just downloaded a bunch of free files and free docs. There isn't any indication there was ever a real market.

Using something free and paying for a product are entirely different things.

steve_adams_86 16 hours ago||||
> Providing ready-made UI components and templates has never been a million-dollar business, nor should it be.

But what if people were already selling them, and tailwind showed up, did it better, and people went directly to them to buy what they were offering?

Why shouldn't that exist?

The folks over at Tailwind offered curated, hand-built components that were readily adapted and tuned to your own needs. They did an excellent job making it so you could pick and choose what you wanted, then theme all of it from your tailwind settings with ease. It was excellent.

Sure, similar things existed for less or at no cost. I was content to pay for this, though. It made my work meaningfully simpler at times. It paid for itself.

> Tailwind's business model existed due to a massive inefficiency in the frontend industry not being able to come to terms with CSS or native components.

I don't agree. The pain it addressed on my team was more so that very few people I worked with understood CSS, but tailwind was easy enough for them to work with (particularly in a React context). It was a useful tool in a context where a lot of the people didn't fully understand the tool. They could just pick and choose components and they'd slot into the app well enough. It addressed real pain there.

They surfed a wave for sure, but I think it was mostly that a non-trivial number of people working on the frontend don't understand HTML and CSS very well. That's not their fault at all.

notahacker 15 hours ago|||
> The folks over at Tailwind offered curated, hand-built components that were readily adapted and tuned to your own needs. They did an excellent job making it so you could pick and choose what you wanted, then theme all of it from your tailwind settings with ease. It was excellent.

They also offered an Open Source CSS framework with the explicit goal of making it easier for you to style your own components. There was always some tension between "make abstraction layer whose adoption depends on users finding it easier to make your own components with than vanilla CSS, which is not unusually hard" and "sell pre-made components". Particularly when there's an abundance of alternative FOSS components/libraries out there[1] in vanilla CSS or even full blown CMS templates for people not wedded to the idea that Tailwind makes things easy for them. Much easier to sell templates or even "premium components" when your USP is integrating them with a backend them rather than merely providing the layer of syntactic sugar supposed to make component styling easy...

They also happened to have the misfortune of designing it in a way which is particularly easy for AI which doesn't have to tradeoff time spent making design decisions and figuring out how to achieve those from the docs vs dollars spent buying components to minimally tweak.

[1]tbf, I always thought the Tailwind creators' designs were more tasteful than the average CSS mixin library even though I didn't think the same about the syntax...

weird-eye-issue 4 hours ago||
> There was always some tension between "make abstraction layer whose adoption depends on users finding it easier to make your own components with than vanilla CSS, which is not unusually hard" and "sell pre-made components"

Do you have an example?

echelon 15 hours ago|||
Humanity evolves.

We wouldn't need doctors if we had a box you could walk into that cured all ailments.

We won't need software engineers once you can crudely specify requirements and have a machine turn them into rigid requirements with a solid data model, flexibility to extend, infrastructure to run, and monitoring and recovery to maintain reliability.

A lot of things change when technology evolves.

slopinthebag 13 hours ago|||
I doubt AI will ever become omniscient
echelon 12 hours ago||
Hydrated sugars certainly think they themselves did.
slopinthebag 9 hours ago||
if you mean this in a reductionist way for humans, i dont think most of us think we’re omniscient

my point more broadly is that if you have an incomplete spec, any entity implementing it either needs to be omniscient or make assumptions about the intended behaviour of the system. if constraints or invariants aren't part of the spec it might be difficult or outright impossible to make the right assumptions.

so while LLMs might be writing all of the code in the future, someone will still need to create the spec + verify it. and often the spec is not really possible to know until implementation begins...

ive been using astra on a project that isn't even that complex in the grand scheme of things, and it still fails to make the right assumptions. of course i could just give it a full complete spec right?! except i didn't know what the right assumptions were either until implementation anyways. so to some extent they were unknowable to me, and thus unknowable to the llm no matter how powerful.

I do think in the future humans will probably write very little code themselves, but the work will be all about specification + verification and that means system design, which is the stuff I care about anyways. maybe I won't develop rsi when I get older :)

4dd3 14 hours ago|||
lol what a load of nonsense.

im not swe by trade, in fact I would love it if what you said was true because I could consolidate various kinds of businesses into one holistic infrastructure and demolish all the competitors.

Aint happening tho!

btown 19 hours ago||||
Tailwind’s business model was entirely legitimate, pre-AI. Humans can only hold so many ideas in their heads, and panes in their IDEs. Shorthand class names let them stay in their render hierarchy while drawing from a logical and consistent design library, without going to another file for styling… or (the hardest thing in CS) choosing good semantic class names!

Of course, enterprises eventually hit a wall in the covered functionality, need customizations and library management, and an official consulting team is there to help - no different than any open source model throughout history.

That they were more vulnerable than most to agentic coding doesn’t make it a bad idea.

wise_young_man 10 hours ago||
[dead]
yoavm 19 hours ago||||
It sounds like your criticism is about their product, not about their business model.

The business model of having a popular product with great documentation, which leads free users to additional paid services, seems like a very valid business model.

Even the criticism you have for their product is along the lines of "the product only worked because they identified a problem in the market; If someone else identified it, this product wouldn't even be needed!". Which is, well, true, but also true for almost any other successful product.

monooso 18 hours ago||||
Most of my clients over the years have been very successful businesses in industries and niches that I never imagined could support a multi-million dollar enterprise. A lot of the time I was surprised that the entire business model was even a thing.

My point is that just because you find the success of Tailwind Labs surprising does not mean that it "shouldn't" be a multi-million dollar business. Neither you nor I get to decide that.

sparklingmango 18 hours ago||||
> Tailwind's business model existed due to a massive inefficiency

Yeah, that's why most businesses form.

xixixao 16 hours ago||||
This is such a poor comment. It starts talking about the business model, but it’s just a “Tailwind shouldn’t exist at all” argument. Clearly it’s a useful tool if it’s used by so many people and companies.
nonethewiser 15 hours ago||
>Clearly it’s a useful tool if it’s used by so many people and companies.

Yeah but its not. Hence the huge layoffs. If they don’t want to find another software development job maybe they could work at a New Jersey gas station. New Jersey protects their gas station attendants.

xixixao 12 hours ago|||
Tailwind is free. The company’s paid offerings are clearly not useful enough in the world of AI. That’s the crux.
achierius 13 hours ago|||
But Tailwind is still being used? It's just being used by AI now.
nonethewiser 6 hours ago||
The paid product.
onion2k 16 hours ago||||
Providing ready-made UI components and templates has never been a million-dollar business, nor should it be.

Arguably many websites and apps desperately need a good component library because it's very clear the UI sucks without one. Lots of people spending a few thousand dollars on their UX is not unreasonable at all, so the best-in-class library (whether that's Tailwind is a separate point) should be able to make a lot of money.

You could easily level the same argument at any library: "This thing is simple so it shouldn't be worth millions." That's just the wrong way to look at how selling works. If you make something that solves a lot of people's pain point (Tailwind) you're going to make a lot of money until someone else sells something that makes it even easier (AI). That is a tale as old as time, and the fundamental basis of how startups disrupt incumbents in an industry.

what 7 hours ago||
The pain point tailwind supposedly solves is that people who are supposed to be front end web developers don’t understand CSS.
onion2k 2 hours ago|||
I don't agree with the other commenter. The point you make is a fair one.

However, I think the real information in your comment is that there are people making websites and web apps who aren't frontend developers. They're likely fullstack who are much more backend focused, and who do the frontend more out of necessesity than enjoyment. Tailwind enables those people who aren't experts in frontend to make things for the web without the necessary expertise to write CSS themselves.

That's why it's valuable - the point of Tailwind is that it solve the pain point (not knowing CSS) with money instead of time. But now people can solve it with AI instead.

This is a poor analogy, but maybe we should consider CSS as a lower level language than Tailwind, similar to JVM bytecode to Java. There are plenty of people who will tell you that a real Java developer understands the bytecode, but that doesn't stop people writing code in Java without knowing the lower level.

14u2c 5 hours ago|||
That’s like saying a carpenter doesn’t understand woodworking because they sometimes buy pre milled lumber. Or that landscaper a doesn’t understand mowing because they don’t trim each blade of grass individually.
jt2190 18 hours ago||||
Your analysis is fundamentally flawed because you’re conflating the Tailwind’s business model, which is based on the actual realities of the market, and your ideal for how frontends should be developed.

There are millions of Single Page, and other “complex” web apps. You not liking it does not invalidate anything.

tshaddox 17 hours ago||||
> Providing ready-made UI components and templates has never been a million-dollar business, nor should it be.

Depends what you mean. I think it’s totally reasonable for a small team with a great reputation to offer a well-made component library and make millions of dollars from it. But I would never expect that to be a reliable source of recurring income, and certainly not enough to support a team of well-paid engineers, designers, marketers, etc. indefinitely.

To be honest, I wonder if AI is even the right thing to blame here, or just a timing coincidence. Is it not the case that they simply sold their UI library to roughly everyone who was in the market for a high-cost component library?

listless 19 hours ago||||
I don’t agree. Building a date picker used to be next to impossible. Overnight it was trivial. That’s some serious disruption.
danvayn 19 hours ago|||
That was certainly not overnight. The biggest disruption they personally did was offering a better alternative to Bootstrap. More customization, JIT compilation that allowed for custom class interpretation without any added CSS, proper flex consideration, removing unused library classes in the production compilation step, etc.

Beyond this, you should really be thanking things like Shadcn for the “date picker disruption”. It is a component library which arguably could’ve existed without Tailwind ever existing.

rgbrgb 18 hours ago||
why shadcn and not bootstrap? shadcn is like a cool weird approach to a ui kit but bootstrap got us a date picker iirc.
stickfigure 19 hours ago|||
Nonsense. There have been perfectly good free date picker widgets available for every era of web development, going back to clunky server-rendered html templates.
sodapopcan 19 hours ago||
Seriously. I always wonder who makes these comments, then I remember I'm old and there are people who don't remember every era of the web. Although, it's still incredibly weird to essentially claim that Tailwind solved date pickers.
paradox460 18 hours ago|||
You have to remember the biggest appeal of tailwind is that it throws away the entire cascade of css. The people that reach for it are choosing it because it offers less functionality, and is therefore simpler to reason about. I hesitate to say they don't understand css, I'm sure some of them do, but in my experience the devs that reach for it are the same who deride css and make statements such as "I have better things to do than learn css"
ryanbrunner 17 hours ago|||
I think there's plenty of developers that are perfectly competent with CSS who still reach for Tailwind.

You're right that Tailwind throws away the cascade, or at least enables developers not to have to think about it (under the hood, Tailwind 4 uses pretty modern cascading features like layers), but people aren't reaching it because of a lack of understanding, they're reaching for it because as front-ends get increasingly componentized, the cascade becomes less and less of a benefit and more of an obstacle to be worked around, and something that gets that obstacle out of the way becomes more attractive.

bvrmn 12 hours ago||||
I'm quite versed in CSS but tailwind has convenient abstractions on top. It's like "why you need C if you have assembler". I don't remember when I wrote raw CSS last time. Even global styles I tend to express via @apply.
sodapopcan 9 hours ago||||
A bunch of people have already said this but I also have known CSS very well (being using it since its release) and even enjoyed it. Butt the moment I saw someone using Tailwind I thought, "I want that!" The idea that Tailwind is for, or rather only for, people who don't know CSS is very misguided. That said, I'm back to using vanilla CSS.
krainboltgreene 17 hours ago|||
Don't forget that, in my opinion very positive way, it also normalized the concept of "uniform measurements". Every instance of `rounded-md` is the same on a site.
paradox460 15 hours ago|||
True. I'm grateful for that but typically reach for them via openprops or home built variables for most of my projects these days
sodapopcan 9 hours ago|||
IE, it has a built-in design system!
abanana 18 hours ago|||
Indeed, I don't know what to make of such a bizarrely nonsensical assertion. Age and lack of experience doesn't really explain it, because all the poster needed to have done was make the simplest sort of web search. It's so wrong, it's... not even wrong.
bdcravens 18 hours ago||||
I think many of the purchases of Tailwind UI were basically donations with extra steps. Many, myself included, wanted to support their work. The prebuilt components were nice, but you can find open source components and/or commercial ones on places like ThemeForest for about $20.
murukesh_s 15 hours ago||||
>Providing ready-made UI components and templates has never been a million-dollar business, nor should it be.

Neither creating a VSCode wrapper and putting an LLM with tools and valued billion dollars (cursor). But thats the demand and supply.. As long as AI was not there Tailwind would have continued it success journey - until a new tiny(at least initially)/shiny/minimal framework comes along

burnte 12 hours ago||||
> I made this point at the time but Tailwind Labs' business model shouldn't exist.

It doesn't anymore. There are tens of thousands of businesses that have only been able to exist for a short time due to gaps in the market and technology. Video rental, started with video tapes, died with DVDs and didn't really make it into the bluray era. Owning DVDs came down to $20, no reason to drive across town and rent one for $6. But then Redbox was able to slip into that gap, putting lots of discs in a vending machine, those are cheap and they went everywhere! It was a buck a night! But then streaming killed that DEAD. Had tapes been cheap from the get go Blockbuster never would have existed, but studios decided to ignore that revenue for ages.

_heimdall 15 hours ago||||
I don't see any reason the business model shouldn't exist, though yes their scale was a challenge IMO.

Selling off the shelf, tested components and themes isn't a bad business. I'd firmly put it in the lifestyle business category, I just wouldn't expect it to sustain multiple high paid engineers on fulltime salary and benefits.

bedroom_jabroni 13 hours ago||
A relatively popular WordPress theme on ThemeForest could bring in $30k on a good month in the market's prime. Nowadays the number is much more humble.
baxtr 19 hours ago||||
According to this logic most businesses should not exists because things should work properly.
dzonga 14 hours ago||||
I agree. things like tailwind etc should come out as by-products of products making money.

react was not facebook's product. rails was not 37signal's product. Kubernetes was not google's product.

blaming AI is not facing the reality of how tech products / open source is financed in our industry.

jillesvangurp 19 hours ago||||
It's not really a moral argument that there shouldn't be a business model but more an opinion that you might now consider verified as a correct one that the business model just wasn't there. I agree that there probably never was one.

Selling to developers just is very hard. The reality of course is that this competes in a space full of other people's OSS attempts at solving the same problem. That just puts an upper limit on what you can charge and who is going to even consider paying at all. And whatever that is, it was nowhere close to what they needed it to be.

AI made the whole proposition less valuable. I actually like tailwind as a solution. But it was always a short cut for people who didn't want to reinvent all the low level CSS hackery on every project they did. It's why I like and used it as well. But I stopped doing these things manually at this point. AI coding tools will happily spit out the raw CSS as well. And the irony of course is that because of tailwind's popularity, generating it was easy as well.

ajkjk 13 hours ago||||
strongly agree except that "million-dollar business" is such a low bar these days that I might argue a larger number is needed for the point to stand.

People are reacting foolishly to the word shouldn't here. It's not a "moral" shouldn't; it doesn't meant anything like "shame on them for existing". It's a technical criticism: the only reason this business was ever viable is that the rest of the ecosystem is in such a sorry state that it became worth spending money on this thing that should have been trivial.

A similar claim would be: Jquery shouldn't have existed, because browsers could have done a not-terrible job in the first place to the point that its existence was necessary. They didn't, so it did exist, but it shouldn't have had to.

tcmart14 14 hours ago||||
Telerik has been around awhile and makes $60 million a year and their business model is selling essentially UI components at the heart of it for Microsoft UI frameworks. There is also SyncFusion and DevExpress.

Its crazy, but there is clearly money to be had in this.

xbar 18 hours ago||||
I disagree.

Ready-made UI components and templates have been million-dollar businesses for a lot of companies for a long, long time.

Finding space in a development ecosystem to provide a set of purpose-built tools is a common and healthy software business pattern.

nonethewiser 15 hours ago||||
They made money by selling components. It was never a good business model. Im fine with saying AI killed it — its not a bad look for AI.
vendiddy 12 hours ago||||
Maybe you're overthinking this?

Tailwind saved me time and the pain of writing CSS so I paid for it.

barapa 17 hours ago||||
It shouldn't exist bc it addresses a massive inefficiency? What do you think markets are for
jmull 18 hours ago||||
Nah.

Tailwind provides an actual simplifying layer for the (over-)complicated practice of front-end web development.

By being well-though-out, well-designed, and very well documented, it actually made web app styling easier/simpler (without hiding or otherwise making it hard to drop into CSS as needed). And it slotted right into the place most web apps have for a CSS/class mechanism.

The paid templates extend the approach to components. The business model is that the credibility they establish with the free high-quality CSS/class system makes people willing to pay for the templates, which then goes over well because the templates are good and useful, saving a lot of development time. BTW, their templates solves a different problem than native components -- I suspect you're dismissive of their business model due to not actually understanding it.

Of course, it's all moot now. AI can generate the components now at the same time it's doing everything else, so no reason to pay for their templates. (Plus, tailwindcss probably doesn't build the credibility as much anymore either because devs aren't using it (their AI might be, but without the direct contact it doesn't have a chance to build that open-the-wallet credibility.)

what 7 hours ago||
> AI can generate the components now at the same time it's doing everything else, so no reason to pay for their templates

So the AI can do a better job than the average front end web developer? Maybe you should take it a step further from “no reason to pay for templates”…

cannonpalms 5 hours ago||
It seems to me that this is the way the market is heading. Strange bleeding edge perf or sprawling complexity feels like the last niche of front end engineers. The rest will move further down the stack or be replaced.
fitsumbelay 18 hours ago||||
I come to similar conclusions when scanning dev newsletters and I fail to skip over an ad link. Based on the value proposition presented in the one-liner I wonder they exist then wonder whether I really understand "tech industry" as it currently is ...
deaton 13 hours ago||||
Finding a massive inefficiency and then finding a way to solve it and make money doing it is basically how the entire economy works.
cush 19 hours ago||||
> the frontend industry not being able to come to terms with CSS

What does this even mean?

There’s nothing wrong with a company taking something complex and making it simple, and they absolutely deserve to be paid for making millions of developers lives easier

froggertoaster 17 hours ago||||
Sort of a weak and dismissive take. Tailwind saw a problem in the market, addressed it, and made money for a while. Why shouldn't that business model exist? It exists across SO MANY other industries.

People pay for aspirin, not vitamins, and Tailwind is aspirin.

solarkraft 19 hours ago||||
I agree that a CSS library is not really worth a big business. But nobody has woken up: AI makes writing tailwind classes more convenient than ever and that’s what people seem to do.
epolanski 13 hours ago||
Wait till you find out AI writes even better css without the tailwind crap.
sevenseacat 5 hours ago||
It really doesn't.
llm_nerd 19 hours ago||||
This sort of critique could be made about almost any industry or individual business. The whole premise of almost any industry is lubricating some friction between the idealized and the reality.

Having said that, sure they were utterly doomed. For that matter, Shopify is utterly doomed as well. Businesses like that will continue to exist, but in no universe is it a $230B space.

vyyy 19 hours ago|||
[flagged]
danvayn 19 hours ago|||
There is some slight irony in them continuing to make these statements for me. Mostly because Tailwind is still incredibly around (and worth investing in, hence Shopify acquiring them) and AI isn’t anything close to offering a drop in solution. That is to say, AI will implement tailwind when building as there isn’t a good alternative, and otherwise just references these docs for the user so that they don’t have to visit the website, so it’s not like it’s being used less.

If you think about it, the site docs garnering traffic (beyond potential tailwind labs conversions) is more of an indicator of a code or design smell than anything. That’s just my 2 cents as a guy who used to look up their docs constantly to confirm a pattern I was implementing, as tailwind classes were never really as self-evident as tailwind labs liked to believe they were IMO.

Like it just doesn’t make total sense to me to compare library documentation traffic hits to traffic hits that happen in other industries here, or with other products or companies. They aren’t even a traditional SaaS company, not that there really Is one either. Their service or income flow is defined by things like offering Enterprise support or a component library at a premium — things that aren’t simply dictated by or shown through documentation traffic trends; things that were encroached upon by plenty of other things besides AI.

jrochkind1 18 hours ago|||
> and worth investing in, hence Shopify acquiring them)

I have nothing against Tailwind, but I think a company with $5 billion in cash reserves and the general context of Shopify may buy a company like Tailwind for community goodwill, to stabilize the technology that they use for their own business model, to acqui-hire the principals, and various other reasons other than Tailwind's business model.

> On the commercial side, we'll no longer be trying to grow the business around Tailwind. All existing customers will of course maintain their access to products like Tailwind Plus and ui.sh, but we're closing sign ups for new customers to focus on Tailwind CSS at Shopify.

spbaar 4 hours ago||
I imagine it has to be for their expertise in translating developer intent into practice and refining the shopify specific markup conventions. When I misread the headline as Spotify I couldn't think of why any org, even very front end heavy, would buy them. But continuing to support a language that will always be in it's own lucrative domain makes perfect sense.
argentinian 19 hours ago||||
Yes. Maybe their business model was never sustainable and now they are unfairly blaming IA as a scapegoat to justify layoffs.
camdenreslink 18 hours ago|||
I think their business model was sustainable, but depended on SEO. AI made it so people would either use the LLM generated tailwind syntax, or the "AI Overview" at the top of the Google search results and never land on the official tailwind documentation site. Less visits on the official docs meant less people would see the paid offerings, which means less people would buy.

It's possible they could have explored other marketing channels (youtube?), but it seems like the death of SEO for this sort of content lead to the main issues.

mrsilencedogood 16 hours ago||||
I'm not sure if everyone in this thread is familiar with what their business model was. It wasn't "selling tailwind premium" or selling "tailing enterprise support". They sold a library of react components that happened to use tailwind for styling. So their competitors are DIY, Mantine, React-Bootstrap, and similar.
esskay 15 hours ago|||
I'm not sure they'd even be classed as competitors to be honest. They floundered massively with the ui kit, most sections of it were very dated and untouched for several years whilst they piddled about with a failed new ui kit that never took off, for which they blamed ai.

The reality was that a big chunk of their initial audience came from Laravel, and as other players emerged and made what was Tailwind UI irrelevant it all seemed to compound into them panicking and making some rather silly business decisions. At one point they had a sizeable team and shipped nothing for a good 8 months, and when they did it was a couple of beautiful but completely impractical landing pages. They just didn't convert it to a sustainable business.

Oh and to add to it, they alienated their paying customers by dropping support for basic js based components in favour of making the entire ui library reliant on heavy js libraries, killing off any interest from most of the Laravel customers who'd been their initial target audience.

porker 3 hours ago||
Spot on.
nonethewiser 15 hours ago||||
If nothing else, it definitively proves AI produces real value.

I hear the contrary a lot but Im not convinced anyone actually believes it.

wredcoll 17 hours ago|||
In the long term, no business model is sustainable.
ryanbrunner 17 hours ago||||
What AI replaces isn't Tailwind (AI will reach for Tailwind pretty readily), but the paid ecosystem that was Tailwind's business model. The value of having a pre-built component goes down when building that component is a 10 minute job of an agent.
tessierashpool 15 hours ago||
I think this is reasonable but incorrect. Tailwind didn't say "our conversion rates went down." They said the traffic to their docs site went down.

Their funnel depended on SEO, and LLMs took SEO out of the equation. What you said about the value of pre-built components might also be true but can't be determined from a situation where consumers suddenly all stopped learning that the pre-built components exist. Occam's Razor says it's the funnel.

sodapopcan 18 hours ago|||
> the site docs garnering traffic (beyond potential tailwind labs conversions) is more of an indicator of a code or design smell than anything

I've heard this before, but it's really no different than vanilla CSS. My guess is that people started pointing this out is that Tailwind got more non-frontend people digging into styling more where they were hit with how much shit there is in CSS.

eudamoniac 17 hours ago||
For me I know CSS quite well, but I would always have to look up some utility names that had no intuitive mapping. line-height is leading, flex-direction has no direct mapping, text-wrap is text but also font size is text, so if trying to do font-size:custom you had to do some weird syntax unlike the other custom value syntax lest it confuse text-[1rem] with a text-wrap rule. There are a lot of these weird decisions.

I love tailwind and will continue to use it, but it isn't perfect in this regard...

sodapopcan 9 hours ago||
All good points. To be clear, though, I wasn't trying to insinuate that Tailwind has NO design smells.

I also like Tailwind, though I don't really use it anymore.

bradly 18 hours ago|||
As a Tailwind Plus customer I found it very hard to use their templates. I'm not and was not a React developer, so maybe I wasn't the target customer, but as a solo builder the products were too opinionated and too specific to make want to reach for them. I felt like I had to "learn" the template.

They used different technologies for different templates and some even use a 3rd party CMS service that I had no interest in using. Their JavaScript components were non-native, so if I wanted to use any of the interactivity I had to write from scratch.

I think they had an opportunity to grow with AI and with the amount of code that is now being written.

threatofrain 19 hours ago|||
I don't really agree that ML killed their business. I paid for their product early on before it was even done but they never really developed their product. I held out hope to the end of a year and ended up never using my purchase.

Compare that to shadcn, which had visible growing pains and yet reached rocketship fame. Shadcn is evidence that developers were hungry for yet another library, and it's also evidence that users were willing to tolerate rough code on the ride to maturity.

I don't believe Tailwind's component libraries deserved to win.

matthijs 18 hours ago||
I agree. I also paid, but the components themselves were hard to use and required quite a bit of work to integrate into our product. For example, most components had a new (slightly different) button and parts of the components didn't have clear boundaries from what I remember.

Besides that, quite quickly there were many other free, and arguably better, alternatives available (like flowbite, preline, daisyui, etc) that I ended up using instead.

elicash 20 hours ago|||
I remember that HN discussion, but it seemed to me from the outside that after that post they got Google as a sponsor and I just had assumed the community was rallying together for them a bit.

But I guess not.

Too bad, they seem like such good people. Not that they're dead or something but I don't think this was their ideal end state for Tailwind.

f311a 19 hours ago||
They got like 10 new sponsors, you can see it on their page. They are one of the top OSS projects in terms of revenue.

I can't recall any other OSS project that makes so much money and has nothing to do with infra/cloud.

They were making around $1M a year back when they complained about the revenue. A lot of Linux distros can only dream about such an amount of money.

simonw 19 hours ago||
$1M a year isn't a lot of money if you are paying for full-time employees.
dlisboa 18 hours ago|||
They achieved $2 million revenue in the first 5 months of the first Tailwind UI release.[1]

They had a very good run for such a project.

[1] - https://adamwathan.me/tailwindcss-from-side-project-byproduc...

esskay 15 hours ago||||
This was after they laid everyone off, so it was just Adam and Steve left. An they surpassed $2M a year in sponsorships a couple of months after that. They were not struggling for cash at all.
tempfile 18 hours ago|||
Right, and as a consequence lots of very important software (orders of magnitude more important than tailwind) does not have full-time employees. Good for them if they can manage it, but it's a gravy train.
simonw 18 hours ago||
Given how hard it is to build any form of financially sustainable model around an open source project I think we should actively celebrate anyone who manages to build a model that works, not dismiss it as a "gravy train".
tempfile 51 minutes ago||
I really just think they got lucky, I don't see anything to celebrate. It's like celebrating one of your friends winning the lottery - good for them, but it's not really an indication the system is working well at all.
Waterluvian 19 hours ago|||
The shape of business moats are changing. There's probably a lot of businesses that are suddenly non-viable as currently designed.

Being a bit silly with the analogy: it's like we've discovered gunpowder and now entire classes of fortification are deficient.

tessierashpool 15 hours ago||
What you said re moats might be true but can't actually be concluded from the Tailwind story. Traffic to the funnel dropped by more than half. That easily explains their problems, and says nothing about moats.

Tailwind had a solid funnel and a good product. Now they only have a good product. That's enough to kill a business.

If (or more likely when) Google loses money because LLMs are replacing search, that's a story about moats.

Waterluvian 14 hours ago||
I was imagining their moat was having a monopoly on where you go to get documentation for the free product, and that's how they sell the for-profit product. If that monopoly is lost (people get the answers they need without going to the store), the moat is gone.
elwell 16 hours ago|||
StyleX, on the other hand, has an explicit LLM Resources endpoint: https://stylexjs.com/docs/llm-resources
ghm2199 19 hours ago|||
Noob question, I recall https://news.ycombinator.com/item?id=49491791 mentioned how the kernel source code and diffs were being crawled excessively. All else being equal, won't all the AI crawling agents mean traffic to docs should at least be stable(presuming changes happen all the time)?
samtheprogram 19 hours ago|||
Tailwind is so pervasive it's 100% in pretraining _and_ RLHF.

I've done several Tailwind projects and rarely did models from various providers need to reference Tailwind documentation.

simonw 19 hours ago||||
A crawler visiting your docs won't help a human decide to pay for your commercial service advertised on those docs.
ghm2199 19 hours ago|||
And also the fact that agents are solving anubis level 5 challenges Tailwind would not be able to figure out how much traffic is from people vs bots. So that would mean the traffic should be up...
KronisLV 17 hours ago|||
> The docs are the only way people find out about our commercial products, and without customers we can't afford to maintain the framework.

In lieu of everything else, I'd say that in circumstances like that it's time to adapt to the state of the world and be the jerks that advertise in CLI.

danielvaughn 14 hours ago|||
I've always loved Tailwind, but at this point I'm not exactly sure why Shopify acquired them.
ernsheong 4 hours ago|||
Wow, citing we need to figure out how to pay out bills and rejecting PR based on that is such a douche move. The fact is Tailwind core is an MIT-licensed open source project.
CodingJeebus 20 hours ago|||
I used to gripe a lot about how Tailwind docs didn't play well with doc aggregators like devdocs.io, or even implement basic browser search engine integration when I was using it regularly. It now makes sense why they wanted to keep their docs scoped to their domain.
keybored 15 hours ago|||
Yeah I remember the “I fired 75%” getting glossed as how could AI do this to my staff.
RA_Fisher 20 hours ago|||
Oof. It’s so sad when businesses with in-demand products suffer from a lack of successful economic mechanism design.
binary0010 20 hours ago||
They had a very successful economic mechanism design for many years. It's one that thousands of businesses have relied on for decades. Create great free product, create rich tutorials and docs, people look them up and you can sell variety of services from there.

Then ai companies stole the data, put a $20 pricetag on it and wiped out all those businesses essentially overnight.

autoexec 17 hours ago||
If those "variety of services" are worth anything they should remain popular. There are countless ways to advertise them to people. I'm guessing many devs who were regularly browsing their documentation had ad blockers anyway.
binary0010 13 hours ago||
Typically here's how it worked:

Company creates a free core product, possibly open source, etc.

Company creates rich help docs and other useful resources.

Customers who use their core free product are frequently engaged with the company and it's helpful resources.

Said company offers additional services such as coursework, cloud services, analytics, etc.

Since customer knows and trusts the core free product, and knows the company is trustworthy, they may be inclined to purchase something.

Now, few coders use these learning resources (ai fetches it for them), they do not know anything about the company and they never engage with the company to see their additional offerings.

Therefore the company now has to advertise by spending heavily on Google/meta/etc. to a cold audience that doesn't even know who they are, because everyone using their system/sdk/library/etc. doesn't know anything about them because ai just steals all their resources and regurgitates it to the coder.

what 6 hours ago||
> Now, few coders use these learning resources (ai fetches it for them)

This isn’t the problem. The problem is that you don’t need to pay for (or care about) their services when an LLM can easily replicate them.

aurareturn 20 hours ago||
I think maybe they should have kept building Tailwinds CSS, release new versions, then charge a subscription to teams for their agents to access latest changes in their documents.

In other words, the documents for the latest versions are hidden behind a pay wall.

lekevicius 20 hours ago|||
That's one way to ensure Tailwind v4 remains forever the only version anyone uses. Agents already are not very responsive to framework changes.
aurareturn 20 hours ago|||
That's ok. Teams who pay can use the new versions.
ceejayoz 20 hours ago|||
And the AIs they use would have no inherent training on those new versions.
CodingJeebus 20 hours ago|||
While everyone else migrates to something else because v4 eventually becomes legacy and the only way to get modern features is to use something open and available. Charging for access to new versions only gives you short-term runway at the expense of giving your entire user base a very good reason to leave.
toomuchtodo 19 hours ago|||
If people can't get paid to pay their rent and eat to write and support code, how is it relevant what the consumers of the code freeriding get? If the AI machine requires ongoing fuel to improve, they can pay for it.

https://en.wikipedia.org/wiki/Free-rider_problem

Muromec 19 hours ago||
They don't get paid to write more of it, but maybe we had enough tailwind and invisible boot of market is giving those people a gentle kick to force them to do something else.
simonw 20 hours ago|||
If you release new versions without documentation it's easy for agents to generate that missing documentation.
potato-peeler 1 hour ago||
Never preferred tailwind. Much simpler to write plain css. It’s easier to create reusable components than what ppl think. CSS hardly has a steep learning curve. Problem with tailwind and many newer css frameworks I see posted even on HN, is they don’t seem to work on older devices, which is a shame. I guess ppl simply test on their latest phones and call it a day. Older ios itself have roughly 7% market share [1], that’s millions of devices that can’t access the web properly.

[1] - https://www.statista.com/statistics/1118859/mobile-apple-ios...

fg137 20 hours ago||
Serious question: is there a need to reach for tailwind if you are building a new site? Won't using vanilla CSS while taking advantage of the latest features be pretty good, since humans are not manually making edits (which removes many of the pain points of maintaining CSS), while simplifying dependency and the build pipeline?
ryanbrunner 17 hours ago||
In my experience, if you're going to aggressively componentize whatever you're building (i.e. a button isn't a css class on a simple `a` tag but a distinct component that exists in it's own file somewhere) there's huge advantages to having your styling be associated directly with your components, and Tailwind is a great option (among many) for that.

If you're building something where your unit of organization looks more like a "page" than super fine grained elements, Tailwind will just make things messy and a higher-level library or writing your own CSS would be a better approach.

I don't think this changes much with AI - right now most models are not terrific at maintaining a huge degree of context in larger projects, so I could absolutely see an agent implementing CSS that works well in isolation but breaks due to the cascade. Maybe that changes in the future, but right now if anything I think Tailwind is well suited to AI because it enforces a certain locality to the changes you're making (i.e. you can reasonably assume that a `text-red-500` class on an element isn't going to break things elsewhere and wll do what it says on the box).

_heimdall 7 hours ago||
Why are your buttons `a` tags?!?

Buttons should be `button` tags. Links should be `a` tags.

quectophoton 6 hours ago||
Reading charitably, when writing that part of the comment they probably were thinking of links that look like buttons, for example the "Get started" link in Tailwind's home page.

Regardless of how that specific one looks like, I wouldn't like if it were replaced by a <button>.

lemagedurage 18 hours ago|||
Yeah, Tailwind is great as long as you have some way to reuse markup, like React. You don't have to care about class names and whether CSS defined somewhere else affects styles of a current component at all. That last point makes sense for LLMs as well: all the styles that affect the current file are automatically in context since styling is local. Admittedly, there are other ways to achieve this but the ergonomics of Tailwind are just good. Having nice defaults and good training data is an added bonus.
prophesi 5 hours ago||
The lack of single-file components is one of several reasons I wouldn't reach for React prior to the LLM craze[0]. For personal projects, I love Svelte. You wouldn't need tailwind there for the reasons proposed given their support for it.

[0] Things have probably changed, but Svelte 5 was a litmus test for how recent the data cutoff was for an LLM model. Meanwhile React _especially_ has no reason to change how the framework is used by coders. Thus there's years of scraped tutorials and sites for how to throttle a function or what-have-you in React.

vazark 19 hours ago|||
IMO, Tailwind is just inline CSS with standardised defaults. I think it found its place because most React devs didn't want to bother with CSS
tiborsaas 16 hours ago|||
It found its place because working on CSS on any non-trivial scale with multiple engineers is painful. The best way to deal with CSS at scale is not to write CSS. And this comes from me who really likes CSS.
ikrenji 11 hours ago||
CSS was prob great for early web but now it's just a pig with lipstick on
IslandRebel 8 hours ago||
CSS is one of my favourite things to do and still is. However, most engineers don't really understand it because most engineers don't really bother learning anything, and as a result you typically end up with a mess.

If someone knows what they are doing and is allowed to make a decent UI library, you can have very clean, efficient styling without libs.

gherkinnn 18 hours ago||||
Oh why can't this idea die, it has been continuously debunked for 6 years now. So much so, any TW discussion will reiterate it.
benoau 18 hours ago|||
Why would it die? How would it die? The vast majority of Tailwind is literally just shorthand for individual CSS properties.
gherkinnn 17 hours ago|||
Because what makes it useful , like media queries, can't be put in style attributes. Frankly this whole discussion is just as silly as claiming flex has nothing over table layout.
vlyan 14 hours ago|||
flex is not a collection of aliases for <td>s and <tr>s
zelphirkalt 16 hours ago|||
Then again one should aim to not even need media queries and make things responsive intrinsically, breakpoint-free, continuously. A design where things jump at hard coded viewport widths is not actually a great design.

So at least that part is not so amazing.

dalmo3 15 hours ago|||
This is certainly one of the arguments of all time. Thank you, HN.
gherkinnn 16 hours ago||||
>inb4 my 1:1 naive mapping of DB to screen works for me

>inb4 the web should be reserved for text documents and hyperlinks and user styles rule and running anything close to applications on the web was a mistake

>inb4 TUI

albedoa 14 hours ago||||
Never stop posting, you are doing great.
slopinthebag 13 hours ago|||
bro your own website has hard coded viewport widths where things jump
zelphirkalt 12 hours ago||
If you were so kind to point out, where I used media queries to hardcode viewport width ... "bro".
albedoa 17 hours ago|||
Oh ya? Is that why the parent prefaced that obvious and indisputable fact with "IMO"?
lucumo 16 hours ago|||
> Oh why can't this idea die

People like to feel superior to others, so dunking on people using a popular technology tickles some pleasure centers. Considering another viewpoint gets in the way of that, so other viewpoints are ignored.

andix 10 hours ago||||
It's inline CSS, but with all the limitations of inline styles removed. There is a lot of stuff that can't be done with inline styles, like media queries.
_heimdall 7 hours ago||
It's inline styles, not online stylesheets. Though yes, inline styles are limited.
_heimdall 7 hours ago||||
It was/is inline styles, not inline CSS. It isn't a stylesheet at all, just a single style property.
eudamoniac 17 hours ago||||
It is used because UI component frameworks make vanilla CSS an awkward an unnecessary tool (the Cascading part). CSS makes sense as designed for styling a document, but not so much for styling atomic components. If we were designing the web and CSS from scratch around the React model, CSS would not be made to cascade, because that is totally unnecessary and usually leads to more issues than it solves. Apart from theme variables, in a component system there's no reason to have global CSS anywhere; you'd just style each component in isolation. So when in the React model you typically want no cascades at all, the library that is made for that gets popular.

CSS modules are also a solution to the above, but, once you get rid of cascading, and you have one stylesheet per component, it is again unnecessary to have the one stylesheet in a different file from the one component. There's no benefit to splitting a component and its styles into two files; it just makes it more annoying to edit. So we move the styles essentially inline, with either Tailwind or CSS-in-JS.

sassbadger 16 hours ago||
Thanks for this great explanation of your viewpoint. As an occasional frontend dev who really got into Tailwind, it was always hard for me to explain why I'm so much more productive in Tailwind than in writing CSS. This makes a lot of sense.
davidw 17 hours ago||||
That, plus it looks like Forth code

    grid dup 1.0 scale wind-x drop cols-4
wuhhh 19 hours ago||||
[dead]
cute_boi 19 hours ago|||
I think it is mostly backend dev who don't want to spend time in frontend stuff.
invalidusernam3 19 hours ago|||
LLMs seem to work well with tailwind which I assume is because there was a lot of tailwind in the training data. As a human I never found tailwind to be particularly easy to work with anyway (mostly because I can't be bothered to learn another CSS framework) so I was constantly checking the docs when manually writing code. But I do like the rigidity it forces, which is probably a good thing for AI coding as well.
ngokevin 14 hours ago|||
I feel it's better for LLMs. For each class name, the LLM doesn't have to go out and consume CSS files and read all the cascading rules and determine what other classes elsewhere might have an effect. It has everything it needs to determine the styling and layout right in its immediate context
vehemenz 14 hours ago|||
I don't really get this argument. 90% of Tailwind is shorthand for existing CSS properties. There's really not much to learn if you already know CSS.
paulhebert 11 hours ago||
Except for all those specific shorthands?

I used it for months at s previous job and spent a lot of time googling “how do I write X CSS property in Tailwind”

vehemenz 8 hours ago||
I’m not sure what to tell you. With only a few exceptions, the shorthand follows a very predictable pattern if you already know the property names. IDE completions help too.
hakunin 17 hours ago|||
I only do front-end dev occasionally, but these are my 3 goto articles that make me lean towards not using Tailwind:

1: https://www.zolkos.com/2025/12/03/vanilla-css-is-all-you-nee...

2: https://www.joshwcomeau.com/css/subgrid/

3: https://railsdesigner.com/custom-elements/ (more Rails specific)

bsimpson 16 hours ago|||
It's my primary role. I started using jsxstyle a dozen years ago alongside React and really liked the ability to style my components in situ without breaking browser architecture assumptions.

I recently had to help out on a vibe coded project that inherited Tailwind (I think from Figma). It was a short assignment so I didn't dig that deep, but I don't understand the value prop of Tailwind. There was no obvious improvement over what I've been used to; in fact, it seemed a lot messier.

hakunin 13 hours ago||
A lot of the time the choice comes down to abundance of resources and community support. So if we're comparing tools (e.g. jsxstyle vs tailwind) maybe Tailwind could actually win on those parameters (no actual idea, just guessing based on the number of stars jsxstyle has on Github), but if we're comparing vanilla to [any tool] then vanilla usually takes the cake.
bsimpson 12 hours ago||
I often feel like I'm the only person using jsxstyle, which is wild since it was done by Pete Hunt, same guy who spun React out of Instagram.
hakunin 10 hours ago||
If I was using React, I'd probably like this tool too. The best counter to "community supported" is "so conceptually simple and small that it doesn't need a community". But perhaps that's kind why I'm not big on React in general.
mock-possum 6 hours ago|||
I’m a full time front end dev, and I’ve basically accepted at this point that some people are really into tailwind, and some people are not. I’m not, and for a while I strongly preferred working with other devs who were also not… but at this point, LLMs have completely erased that distinction.
threetonesun 19 hours ago|||
What's "funny" is that newer/modern CSS is often very clunky to write in Tailwind, or unsupported entirely unless you build your own selectors, but AI doesn't understand those well or how broad their support is, so getting AI to write good/modern CSS outside of Tailwind is pretty difficult. I suppose someone could make a new library that is for AI tools that focuses on the latest and greatest in CSS, but there's no market for it any more because AI would just steal it and generate UIs with it.
paulhebert 11 hours ago||
Yeah this is my main beef with Tailwind. There are lots of modern CSS features that are really nice that you have to hack into Tailwind because they don’t really fit into a utility model.

(Any complex grid model for example. If you haven’t used grid template areas try them out! They are by far my favorite way to do complex responsive layouts)

marcosdumay 18 hours ago|||
Vanilla CSS can take advantage of features like that "cascading" part that Tailwind goes entirely against.

If you are styling a site, there's no competition at all. But if you are styling a single interaction-heavy page, it's a lot less work to put all the formatting inline instead of thinking about a descriptive structure and write your CSS around it.

Apparently a lot of people design entire sites one page at a time.

miiiiiike 14 hours ago|||
I started with a UI framework thinking I'd need it but over time I realized that I was using it exclusively for button theming and setting the default font. I was using vanilla CSS and vanilla JavaScript and after removing the framework my package sizes reflect that fact.
stephbook 18 hours ago|||
Believe me, I try all the time. But HTML and CSS are not made for the modern web.

Styling radio buttons, working date inputs, forms that POST automatically, typeahead and server-side validation (eg username already taken.)

You spend all your time reinventing the wheel and then it's buggy and looks like a dog. To say nothing of the inevitable poly fills and Cross-Browser issues.

_heimdall 7 hours ago|||
How does this relate to Tailwind though?

Tailwind does ultimately compile down to CSS. Anything you can do in Tailwind can be done in CSS.

zelphirkalt 16 hours ago||||
I have not run into cross-browser differences in a long time. That is differences, that actually mattered and for which I would have had to build any workaround. I have built several websites recently, using vanilla HTML and CSS and solved everything using server-side rendering.

What problems specifically do you see with server-side rendering?

BrandoElFollito 14 hours ago||
From a security perspective I greatly prefer a client-server approach: you have an unsafe frontend where you care about ergonomy and aesthetics, and a backend which provides an API which handles the security.

Two different worlds and often two different kinds of developpers

zelphirkalt 13 hours ago||
I think we actually don't disagree there, but we have a different understanding of the term "server-side". Anything related to security must happen on the server since safety measures in scripts running client-side can be defeated.
BrandoElFollito 53 minutes ago||
SSR (Server Side Rendering) provides the browser with a page that is created on the server (and possibly enhanced/hydrated on the client).

Having a separate backed and frontend allows for separation of duties: the client is responsible for the user-facing content and the backend deals exclusively with data flows. This allows to have several independent clients, machine to machine connections etc.

Whatever arrives to the server is untrusted, and the API (or other interfaces) only verify raw data (a JSON for instance) and there are excellent (backend) frameworks for that.

Mixing the visual content with the data is possible (Django does that for instance) but from a security perspective less efficient (again - separation of duties). It also requires to possible double the work to have an independent API.

In other words, if you separate the two you do not care about security on the front at all, and the one who builds the back can focus on their expertise.

Callumk77 18 hours ago|||
How does tailwind solve this vs. vanilla CSS?
keithnz 14 hours ago|||
I used to use tailwind a lot, but AI has made it redundant largely. There's zero reason to add any library into your stack unless it has significant advantages, tailwinds advantage was largely a developer convenience, and that's not really needed anymore. You can now maintain a design system in CSS really easily and ensure your UI conforms to it using AI tools in a way that seems way more powerful than before.
pjmlp 18 hours ago|||
Not at all, I personally never used nor plan to.

I am a big advocate of classes, not inline styles spaghetti.

The only contact I had with it was due to FE teams jumping into it, however every couple of months is something else anyway.

dlisboa 19 hours ago|||
This is a good discussion: do LLMs change the calculus for DRY?

A major point of components is having a single place where you can change design and behavior across your entire codebase. With LLMs you can with very good accuracy tell them to change the look of "all buttons that are confirmation buttons in modals but not in the login modal". Doesn't matter if there are 10 such buttons or 1000, it'll take a few seconds for them to accomplish it.

I'm slowly forming the opinion that nowadays having copy-and-pasted "components", with their whole HTML just repeated over and over, is now a much less worrying thing in a codebase. Even a bloated CSS can be quickly fixed by a LLM.

And like you said: you eliminate the build phase entirely and frontend development ergonomics goes back to how it was in the early 2000s.

nightski 19 hours ago|||
So you enjoy reviewing your entire code base and relying on an extremely detailed regression suite just to make simple changes? I don't think AI changes good engineering at all, it just changes who or what is doing it.
dlisboa 18 hours ago||
It definitely changes some aspects of good engineering.

I'm not a huge AI person but it's obvious a host of great tools we've built to deal with our challenges would not have been significant if we had LLMs.

A very crude example: to translate code into a different language someone would need to write a tokenizer, a parser, an AST and finally a translator. All significant engineering challenges, taking days to finish. Nowadays you can tell an LLM to do that in minutes.

Staying on topic: we could easily argue that CSS wouldn't have existed if LLMs existed and could create table layouts from pasted images in a chat window.

nightski 18 hours ago|||
I disagree about your last statement. That only covers the initial creation/generation phase. It ignores the engineering aspect of maintaining that design through the entire lifecycle of the product. How do you evolve that table design?

Sure an LLM can update every table in your project every time you make a change, just as a human could. It also can make mistakes and burn significantly more tokens doing so. Or, it could update one component with a one line change and be done. Easy to verify, less change for mistakes.

Engineering is a discipline and does not change dramatically with the advent of outsourcing it to agents.

skydhash 18 hours ago|||
> to translate code into a different language someone would need to write a tokenizer, a parser, an AST and finally a translator. All significant engineering challenges, taking days to finish. Nowadays you can tell an LLM to do that in minutes.

Do people do that on a regular basis? The most recurring case of building the above is when someone wants to include a language into a project and they usually don't bother with a translator. The second case is when transpilling (ex. LESS to CSS) and that's more akin to macro and other preprocessing tricks than a full blown translation.

> we could easily argue that CSS wouldn't have existed if LLMs existed and could create table layouts from pasted images in a chat window.

All current UI and Document conceptual models include styles (either as direct properties or separate models) and some does include named styles. The novel aspect of CSS is the Cascading concept, not the styling part. And cascading is obvious when we consider that there was supposed to be user stylesheets for documents. I read epub and user stylesheets (created from UI) is crucial.

dlisboa 17 hours ago||
> Do people do that on a regular basis?

They can now.

https://www.checklyhq.com/blog/agentic-rewrite-nodejs-to-go/

raincole 18 hours ago||||
Frontend development in the early days was nightmare. I don't know why people pretend there was some kind of golden age but there really was not.

You could still develop frontend in the old way. Most browsers are very good at supporting old websites. But on one wants that.

zelphirkalt 16 hours ago||
Nowadays though, that old way is working very well, because of all the things that were added to HTML and CSS, making things, which used to be annoying or difficult mostly easy.
Philip-J-Fry 14 hours ago||||
LLMs change the calculus on DRY in some cases. I would say it's still very much a no-no on the frontend side of things. Code repetition is directly correlated with bad loading performance. When you're optimising for people on slow mobile connections, your HTML/JS/CSS being 500KB instead of 1.5MB matters a lot.
dlisboa 8 hours ago||
That only matters in context: if this repetition allows you to forego React and a zillion JS libraries you’re better off in the end performance wise.

I have never seen a single website where performance downgrade was caused by HTML.

However I’m not advocating for it, just making the case that it’s very hard to do worse than we’re currently doing with front end development.

hamdingers 15 hours ago||||
> do LLMs change the calculus for DRY?

Yes it makes it insanely easy to refactor duplicated logic into shared and tested modules. Why would you go the other way?

dlisboa 7 hours ago||
Components as in React, Vue, etc requires a complete overhaul in frontend rendering, many dependencies, changes in deployment and even have an impact in organizational structure.

If one wants to do server side rendering with HTML templates like the old days there is no real “components” way of doing it (although declarative Shadow DOM is coming along). Partials are not the same thing.

In that scenario some repetition can give you the benefit of keeping a clean stack with no client side rendering.

stefan_lec 7 hours ago||
Have you tried Astro? It lets you do exactly that: server-side rendering with HTML templates in component form, with css scoped to the component. No shadow dom needed, no JS frameworks either.
lemagedurage 17 hours ago|||
[dead]
pier25 16 hours ago|||
There's never been a need to reach for tailwind. It's really a matter of preference.
ouraf 11 hours ago|||
Yes. Good design and a developer with good taste can make your site so much better than something mechanically excellent, but tasteless or derivative.
insin 19 hours ago|||
Writing CSS in a way that will scale up with the size of your project and team is just as hard as it's ever been, you still have to come up with a convention for doing that, including taking into account what newer features bring to the table. Having to manually edit it was never the pain point.
mb2100 19 hours ago|||
Short answer: no, not necessary. Long answer: https://mastrojs.github.io/blog/2025-11-27-why-not-just-use-...
6DM 18 hours ago|||
Personally I still find it really helpful to have a proven framework to rely on so that I can be confident I'll have a reasonably consistent looking UI across a range of browsers, browser versions, screen sizes, and OS even versions.
throwaway219450 17 hours ago||
Bootstrap was/is popular for the same reason. One framework and your site looks decent on almost any device. The downside is a bit like LLM work in that it all ends up looking like a Bootstrap site unless you’re a good designer.
pmdr 13 hours ago|||
I like vanilla CSS, but agents in my experience seem to deliver more uniform results when using tailwind.
paradox460 18 hours ago|||
Imo no

CSS is really good these days. Scope rules and the new selectors available mean you actually have to work hard to mess things up like you did in previous eras

shepherdjerred 17 hours ago|||
is there a need to reach for compiled languages if you are building a new program? Won't using vanilla assembly while taking advantage of the latest instructions be pretty good, since humans are not manually making edits (which removes many of the pain points of maintaining assembly), while simplifying dependency and the build pipeline?

(Abstractions are still very useful to LLMs)

madrox 14 hours ago|||
I believe if react had made inline styling of components less verbose then tailwind wouldn't exist
paulhebert 10 hours ago||
Yeah I think if React had adopted Vue’s scoped model early on then CSS Tailwind would be much less popular

(I much prefer the scoped CSS model)

runarberg 19 hours ago|||
As someone that hates Tailwind, I think there is actually a use case here. If you are fluent in CSS reaching for Tailwind is probably a mistake. But for better or for worse there are lots of developers who can write HTML and JavaScript (or more likely React) who will not, and do not want to, learn CSS, for them things like Tailwind is a godsent.

I do think Tailwind is overused, but it obviously has some legitimate use case.

theturtletalks 19 hours ago|||
There’s been a lot of devs reaching for StyleX over Tailwind recently. Not sure if hype or there’s real advantages.
manlymuppet 19 hours ago|||
Tailwind is still considerably easier to work with than vanilla CSS. You just have to write less.
TechSquidTV 19 hours ago|||
It still helps deduplicate.
goatking 19 hours ago|||
Only if you are using a framework like React, where you create generic Button and other components.

Try using Tailwind with server-side rendered frameworks like Rails or vanilla HTML, and you will find yourself repeating the same stuff over and over again. Basically anytime you want e.g. a <button>, you have to repeat all the inline css for it. (There are plugins for Rails that adds "components", but I found it very clunky)

robertoandred 17 hours ago|||
Not really. Every single button that gets rendered has thirty class names attached to it instead of one. It really bloats markup with duplicated classes.
davidpapermill 18 hours ago|||
Don't do a lot of technical work nowadays, but tailwind is still my go-to. Vanilla CSS just doesn't have nice ergonomics.

With AI I guess you could skip it, but I like to understand the code.

vehemenz 14 hours ago|||
What do you mean by vanilla CSS?

I can't be the only one who has no idea what this means. Do you mean high-abstraction classes that are bound to the DOM arbitrarily, and are difficult to change later? We've had 25+ years to see how that doesn't scale.

Do you mean Tailwind-style functional CSS written by hand? What would be the point of that?

bvrmn 11 hours ago|||
Without tailwind LLMs tend to use inline random colors, random sizes and radiuses. Project becomes an unmaintainable design soup really fast. Even with tailwind first priority is to define dark/light theme with semantic colors. After it's a smooth sail (sort of, routing, forms, state ownership and persistent url state are still an alien concept for clankers).
recursive 10 hours ago||
My clanker made my vanilla css with branding color variables. shrug.
bvrmn 3 hours ago||
Did your clanker reach 40k CLOC?
grumple 17 hours ago|||
A few of my teams use tailwind. As someone who used css directly for years, this just means I have to waste time looking up the tailwind equivalent of things I know (if I’m not vibecoding). Strongly dislike it for that. But css management is really bad without it too. If I knew all the tailwindisms, it would probably be a clear winner.
TZubiri 8 hours ago|||
If it's the case that there's almost never the need to reach for it, and I do find myself in that camp, then a harder question is begged, why is it so popular?

I think there's a lot of technologies that are in the category of categoric mistakes to use, but popular enough and inert enough that they don't get dropped. There might be lots of different explanations depending on the technology, a lot have a reason the moment they are released.

Many third party tech becomes de facto standard at some era, then those features get incorporated into more mainstream tooling like browser css, and at that point the third party tooling exists only because of inertia and adds little value, but increasing supply chain and complexity risk.

Another example on this category is Axios which was essentially a cleaner DX for XMLHTTPRequests in client side javascript before Fetch, and later a polyfill for it. Nowadays it's a blunder to include it, but it ended up in stackoverflow answers and training sets, so it's "safe" to include. Developers that are on the bleeding edge drop it, but those that are catching up and reading tutorials or classes from the previous era, or using llms, use the previous era cutting edge technique, because they aren't evaluating all the parameters of a choice, they are just going with whatever someone else is using, which causes a coalescing around certain central technologies like React, Kafka, Redis.

Regarding Redis, my understanding is that it was popular during one era where databases were used to store state because we didn't know any better and people were moving fast and breaking things, so it was developed as a sort of hack to move things from a database into memory. But nowadays people just use it wherever (because it really is the most blank microservice you can think of, you can slap it anywhere), and people implement it off the bat.

There's lots of more specific reasons why bad third party deps persist. In python there's a library called python-dotenv, which is a categorical mistake to include, but people do it because they come from Node where it is a standard practice. But there's the standard nuance that in Node, it is a built in, but in python it is a third party dependency from a random dev (no offense to the dep dev, only to the users of the dep). It literally is replaceable by calling Open(), write(), and close(), but there it is with a lot of downloads waiting for the day it is targetted and hacked to capture millions of .env files. Personally to me it would be strike 1 of 2 if someone imports it, but there you go.

Yes, there's no reason to import tailwind, it adds nothing, the idea of:

red-color { color: red}

big-text { font-size: 14px}

<p class="red-color big-text"></p>

Is as laughably low quality, the application of a technique in form but not substance, similar to Getters and setters in Java, effectively making every property of a class public, but formally implementing the private keyword and access through functions. 100% a categoric mistake to implement.

I've written elsewhere of a phenomenon where devs avoid lerning a base technology, and rather end up learning a tech on a higher abstraction that ends up being a 1-for-1 of the lower tech, but it gave them the hope that they could avoid doing that learning, and they only drop into that realization by piecemeal ala "we did it not because it was easy, but because we thought it would be easy", and the only cost is that they learned the non-portable version of that technology and now they are vendor-locked professionally into that technology so they will spread it to the next repo, company, job posting and so on.

There's analogues in biology of inert viruses or parasites that don't materially cause damages, but their lifecycle depends on the host. Although to some extent, by competing for resources they always cause SOME damage, but it is important to notice that not all viruses or damages are highly damaging, that's a rare situation of very extreme pathogens, it isn't very beneficial to kill or damage your host. In fact many may be commensal, but there is a tendency to harm.

In conclusion, I think tailwind and such pre-ai slop-deps are more popular because they are inert viral parasites rather than because they provide value.

svachalek 8 hours ago||
I tend to agree. Software development history is a long saga of things that are bad and still popular. Think of how popular J2EE, XML, and SOAP were at some point, and they're just miserable to use or maintain.
draw_down 19 hours ago|||
[dead]
micromacrofoot 19 hours ago|||
there's never a need to reach for tailwind, it's just a pathology some people like because someone else did the design work for them
Waterluvian 19 hours ago|||
I think the second half of your statement disagrees with the first.

Much like saying, "there's never a need for Scratch, it's just a way for my kids to code fun things without worrying about semicolons."

micromacrofoot 18 hours ago||
That's true about Scratch so what's the problem? You don't need to use Scratch if you learn the syntax of whatever language you desire to use.

Tailwind is a design library for people who don't want to learn or write CSS. They don't technically need it.

chinathrow 19 hours ago|||
Why insult the millions of users relying on Tailwind?
micromacrofoot 18 hours ago||
What's the insult? Tailwind is specifically for people who don't like writing CSS because it avoids various ways CSS works and comes with predefined styles.
chinathrow 17 hours ago||
"Pathology"
micromacrofoot 17 hours ago||
it's objectively a pathological use of CSS because it circumvents the C (cascade)
arvinsim 2 hours ago||
More discussion should be had if the cascade is even beneficial in the first place.

It's ironic because standard software development practices advocate isolation.

GeneralMaximus 18 hours ago||
I quite like Tailwind. I've had great experiences with it, especially on projects where the skill level of contributors was highly variable.

That said, Tailwind is not as powerful as plain old CSS. It's a bit like training wheels for CSS—you gain some guardrails and prevent newbies from messing things up too badly, but you also give up the power modern CSS affords you.

E.g. I invite you to look at some of Ahmed Shadeed's (https://ishadeed.com) layout tutorials, or whatever you find on the CSS-Tricks/Masters.dev homepage today. It's bonkers what you can do with modern CSS!

Tailwind gives you access some of what's possible with CSS today, and they keep adding support for new features, but it's impossible to express everything CSS is capable of using only utility classes. At some point, you need to write some actual real CSS code.

So personally, it's a tradeoff for me. If I really want the full power of CSS, I use plain old CSS. If I'm willing to trade power for the convenience of Tailwind's built-in design tokens and guardrails, then I pick Tailwind.

Both approaches are good and valid. The right choice is context dependent. With And with LLMs in the mix, it's not that hard to port a Tailwind codebase to plain CSS, or vice versa, so picking the wrong thing doesn't have as high a cost as it used to.

admiralrohan 58 minutes ago||
What will Shopify gain from this deal? Why everyone is buying dev tools. Earlier Anthropic bought BunJs. Can anyone explain the business model here?
satvikpendem 3 minutes ago||
Controlling critical technology your software runs on.
zyf 19 minutes ago||
I think it's to ensure they're in-house projects using the tech keep going smoothly? They also get the talent along with the tech, right?
pil0u 20 hours ago||
They are buying the people and the brand. Even Adam admitted that AI impacted dramatically their business. Selling UI templates in the current era is likely a dead end, even with a brand as strong as Tailwind.

I hope Adam and the team are well and good with this decision. Tailwind is regularly debated here for various reasons, using it helped me have a better understanding of CSS, HTML and design, and made me a better software engineer. Thanks for building and sharing Tailwind!

dawnerd 17 hours ago||
It’s far from dead. All of the AI models struggle with creativity and consistency. There’s always going to be a market for well designed UX.
spiderice 16 hours ago|||
> There’s always going to be a market for well designed UX

Given the past 3 years, I will never understand how people can be so confident making statements like this

shunia_huang 4 hours ago|||
If you are implying that AI models can do 'well designed UX', I would really love to learn the way of doing it.
imafish 2 hours ago||
That's not how I'm reading it. More like, given the past 3 years development, why wouldn't AI be able to do that in the not-so-distant future?
ane 1 hour ago||
Using AI for design will always be derivative. For many cases that is good enough but for good product design, a human element will most likely always be necessary. Until the machine gains the ability to do just that
chairmansteve 12 hours ago||||
Yeah. Where's the "well designed UI"?

The only thing left is my Roku box, and it seems to be starting on the road to crappification.

smithcoin 13 hours ago||||
The sentiment goes both ways?
keybored 15 hours ago||||
The local knitting club and Stanford University use the same flavor of stock/decorative images for their promos and communications.

Can’t believe that the thing that got permanently stale after a month is being put into question. The heresy of it all.

dakolli 12 hours ago|||
What are you talking about, there's still a market for handmade watches from switzerland. Literally nobody values AI generated UX. Except people with terrible taste. I see it and I email you and tell you how ugly it is.

The billion dollar AI companies saying desgin is dead are still hiring 100k retainer designers to do their landing page.

You simply have terrible taste if you think otherwise.

vlyan 14 hours ago||||
yes, but it will be the size of the market for smiths, coopers, and arkwrights.
elwell 16 hours ago|||
> There’s always going to be a market for well designed UX

A bold claim

davidpapermill 18 hours ago|||
I'm not sure it's completely dead.

We use Claude for design of document templates a lot, and whilst we've built a fantastic pipeline for doing that well, asking Claude to then design anything outside of our guardrails isn't effective.

So I could imagine folks prioritising high quality design of all kinds choosing templates that would guide Claude.

I look at a large number of startup websites and it's very clear which ones are using Claude the excessive CAPS headings alone give it away. They look OK but the Claude aesthetic does leave me wondering whether this is a real business or one person using Claude to build a LP.

keybored 15 hours ago||
> Even Adam admitted that AI impacted dramatically their business.

Even the bossman admitted that AI fired his employees, not the boss.

I guess that’s why people talk so much about leadership this leadership that. I’m learning that leadership is when you are the captain of the ship and the ship goes down you man the lifeboat and mourn your sailors over what the Sea did to them.

evanelias 14 hours ago|||
In this specific case (Tailwind Labs) I don't understand this sentiment at all. It was a completely bootstrapped company! Its entire existence is due to the many years of difficult work by its founders.

What exact outcome would correctly align with "good leadership" in your view? It sounds like you think the CEO/cofounder should have "gone down with the ship" here -- how does that help anyone if it means the entire company would have failed?

shimman 15 hours ago|||
It is common in our industry isn't it? There was another startup that fired all their employees then one month later got acquired by CloudFlare. Hard to not see this as fraud in the loose sense of the word.
popupeyecare 20 hours ago||
I was a huge fan of Steve Schoger's YouTube Series - Refactoring UI. Taught me so much about design. Congrats on the exit. Hope it was good.

Bring back the series!

https://www.youtube.com/@SteveSchoger

mijustin 15 hours ago||
Agreed! I get inspired just by seeing him talk through his approach to design problems.
testycool 19 hours ago||
Holy shit I had no idea there was a YouTube series, nor that he had a YT channel.

And a recent video is about designing a dashboard with Ai, which is exactly what I been needing from him specifically.

I remember reading the book 6 years ago and I loved how easy it was to understand.

It's also where I first learned about dense UI and was amazed at a before/after example of one. You can clearly see that uncommon common sense he has about UI/UX.

Thanks for mentioning this.

jedberg 16 hours ago||
With how good LLMs are getting at coding, running a DevTools company with both an open source and commercial component is getting harder and harder to do. It's easier every day to just vibe code the commercial part if you have the open source part.

The ones that are successful provide other services that are still hard to do, like hosting at scale, or running the open source at scale.

Basically, running something at scale is what DevTools companies need to do to survive. Hosting the open source and the data is one type of running at scale, or helping companies run the open source in their own infrastructure is another way to help them run at scale.

dabinat 11 hours ago|
People put things out there for free and the AI companies used that data to replace them. I do wonder if the end result of that is that people will stop putting things out there for free. Open-source development was already a pretty thankless job.
PaulHoule 12 hours ago||
(1) Shop Pay is one of the services that I’ve seen grow fastest in market share ever. Like in the last six months it seems like almost every independent online store sees my phone number and offers me a text to pay via shop.

(2) Tailwind is part of the CSSSlop ecosystem that includes of course the original Bootstrap, SASS, Emotion and many similar things that never really worked from an ecosystem perspective because learning the specifics on one CSSSlop framework never means you don’t have to completely understand CSS. CSSSlop just forces you to learn more things and face more cognitive overload.

Now that CSS includes most of what CSSSlop did, you can just use CSS and that’s a good thing. And if AI can answer questions about CSS and save you from trying to find answers in splogs or learning to navigate 50+ spec documents to find definitive answers, isn’t that a good thing?

petcat 20 hours ago||
I instruct my agents to build UI exclusively with bootstrap 5, jQuery, and HTMX.

Every app is fast, responsive, progressive, small, and most importantly: it fits in my brain and I can maintain it. No build step or really any tooling at all.

jjice 17 hours ago||
Curious what jQuery brings for you these days? My favorite jQuery features got implemented in the vanilla DOM APIs (document.querySelector and fetch being the big one for me). Now I'm curious if I'm missing out.
petcat 17 hours ago||
I prefer the terseness of jQuery's API and things like chaining dom operations with the fluent API. I don't like the native DOM API. Too verbose

(I still read and review code)

SparkyMcUnicorn 15 hours ago|||
I still think the only reason to use jQuery is if you need IE11 support.

Otherwise, it's really simple to do all the things you mentioned without the complexity/heaviness of jQuery. Something like this:

``` const $ = s => { const r = {}; const els = [...document.querySelectorAll(s)]; r.text = t => (els.forEach(e => e.textContent = t), r); r.on = (ev, fn) => (els.forEach(e => e.addEventListener(ev, fn)), r); // ... return r; }; ```

abanana 15 hours ago|||
Makes sense to me. Their motto was "Write less, do more", i.e. its conciseness was a major selling point, but that seems to have been forgotten now that its other selling points have been rendered obsolete.

I recall scripts ending up as little as one-third the size of vanilla JS, when rewritten using jQuery (where the website was otherwise using jQuery anyway).

alexcroox 18 hours ago|||
I've been thinking the same about the future of frameworks. Many of the complexities in today's frameworks exist for "developer experience", given that's less and less relevant by the month, it will be interesting to see the tech stacks chosen going forward.
mrits 13 hours ago|||
I do boostrap 5 and htmx. works great
sgt 20 hours ago|||
Also a solid combination for LLM assisted apps. Claude Code will just get it. It's good with Tailwind also though.
kyleee 20 hours ago|||
Even better than that - just use bootstrap 3
eudamoniac 17 hours ago||
IMO it is literally not possible for a medium+ jQuery app to fit in a brain or be maintained easily (especially without TypeScript). That's why React et al were invented. It is smaller, faster, no build step for sure, but I would never reach for jQuery for any possibly ambitious app.

If you are using mostly agents and don't actually need to have it in your brain, then I'd probably go with strict TypeScript at the very least for verifiability purposes

ngmc 7 hours ago|
Glad to hear the team found a successful exit. Adam bought the tailwindlabs.com domain from me when they started out and he seemed genuinely cool. Hope they keep building tools so many people enjoy using.
More comments...