CommunityNews

CommunityNews

Tailwind is a Leaky Abstraction

I have to admit: as I’ve watched Tailwind enthusiastically adopted by more and more of the frontend community, I’ve remained skeptical. But, having never used it, I decided to keep quiet until I had an informed opinion.

Well, I’ve spent the past few months at work learning Tailwind with an open mind. I can now confidently say that I do, in fact, dislike Tailwind, and I wouldn’t use it for any new projects.

Tailwind is commonly described as “utility classes”, but that’s a bit of an understatement. It’s essentially a small language you write in the class attributes of your HTML that compiles to a combination of CSS rules and selectors — an abstraction over CSS. But all abstractions leak, and Tailwind is very leaky.

Read in full here:

This thread was posted by one of our members via one of our news source trackers.

Most Liked

faust

faust

Oh, nice one, unfortunately I don’t own this book so I won’t be able to take part on it, but I’m looking forward for some future opportunity =)
It seems a great idea to keep people motivated.

faust

faust

Oh, nice!
I just love this forum more each day :blush:
I’ll PM you
Thanks!

gflashner

gflashner

Maybe it is just me, but I really didn’t enjoy working with Tailwind utility classes. I am not a CSS expert, but I still like working with plain CSS.

Where Next?

Popular Frontend topics Top

New
First poster: bot
Why I Love Tailwind. Why Tailwind is blowing up, why I (the creator of styled-components) love it and how I avoid the downsides of atomi...
New
New
First poster: AstonJ
Welcome to the 5th edition of the JavaScript Rising Stars, our annual round-up of the JavaScript landscape! The concept is the same as b...
/js
New
First poster: bot
In JavaScript programs, asynchrony arises in situations such as web-based user-interfaces, communicating with servers through HTTP reques...
/js
New
First poster: bot
How I built a telnet chat server in 2021 with WebAssembly. I love the aesthetics of terminals and I’m not the only one, there is a whole...
New
First poster: bot
This guide is intended to cover everything you need to know about creating, manipulating and comparing strings in JavaScript. Extra tips...
New
brainlid
In episode 59 of Thinking Elixir, we talk with Joel Kemp about his experience introducing Elixir at Spotify. We learn about the concurren...
New
First poster: bot
Implementing an app redesign is never routine nor easy. Two weeks after I was hired at Polytomic, I began implementing the app’s first re...
New
brainlid
You are storing some Phoenix LiveView state in the browser. You want to retrieve that saved state as early as possible to improve the use...
New

Other popular topics Top

AstonJ
Curious to know which languages and frameworks you’re all thinking about learning next :upside_down_face: Perhaps if there’s enough peop...
New
New
AstonJ
We have a thread about the keyboards we have, but what about nice keyboards we come across that we want? If you have seen any that look n...
New
DevotionGeo
The V Programming Language Simple language for building maintainable programs V is already mentioned couple of times in the forum, but I...
New
PragmaticBookshelf
Rails 7 completely redefines what it means to produce fantastic user experiences and provides a way to achieve all the benefits of single...
New
New
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New
AnfaengerAlex
Hello, I’m a beginner in Android development and I’m facing an issue with my project setup. In my build.gradle.kts file, I have the foll...
New
PragmaticBookshelf
Fight complexity and reclaim the original spirit of agility by learning to simplify how you develop software. The result: a more humane a...
New