Unpopular Opinion: Bootstrap is a better front-end framework than Tailwind

Tailwind is the hot topic these days, and 9 out of 10 developers will probably suggest (or even force!) you to use Tailwind over Bootstrap. However, here are some logical and rational reasons why Bootstrap is actually the better framework:

1. Easier learning curve. Bootstrap 5 doesn't assume deep expertise in frontend design. The fact that backend developers can implement it easily without learning arcane concepts like state management or virtual DOM is highly underestimated.

2. Highly Utilitarian. While tailwind markets itself as a "utility first" framework, Bootstrap offers real utility without all the extra fuss. Navbars, modal popups, utility classes for colors and accents like `bg-primary`, `bg-secondary`, etc.— are all built-in and ready to use. How much more utilitarian could you get?

3. Creativity within Uniformity. This point is more about psychology than technology. One of the biggest criticisms of Bootstrap is that "most Bootstrap-built sites look similar". But this is a subjective opinion and ignores the fact that creativity doesn't always equate to reinventing the entire wheel. You can still be creative with configuring a wheel's spokes, tyre colors, tube pressure, etc. on an assembly line - In fact, such creativity is ideal when it helps increase productivity while delivering a standardized, user-friendly experience.

PS: Which one feels simpler and more utilitarian to you?

- Tailwind: `<button class="bg-sky-500 hover:bg-sky-600 active:bg-sky-700 text-white px-4 py-2 rounded-lg">Click me</button>` - Bootstrap: `<button class="btn-primary">Click me</button>`

3 points | by pyeri 1 hour ago

1 comments

  • stephenr 1 hour ago
    > bg-sky-500 hover:bg-sky-600 active:bg-sky-700 text-white px-4 py-2 rounded-lg

    What fresh fucking hell is this? I can't say I've had the (mis)fortune of being forced to work with Tailwind (I've seen the name enough to know it's something vaguely "CSS framework"-adjacent though).

    Seriously, though what kind of crack induced nightmare state was required for someone to think up such an abomination, implement it, and then make it public for the world to see?

    Furthermore, who in their right mind saw that and said "yep this is fine"?

    • pyeri 1 hour ago
      Not a tailwind geek myself but I think how they justify is "better to have a little extra spaghetti in your html code than create a truck load of spaghetti in your app.css stylesheet."

      The alternative to using tailwind here is to define the specific style elements for each one in the css stylesheets yourself with something like this:

      .bg-sky-500 { background-color: blue; }

      Tailwind proponents argue that they avoid this "stylesheet hell" by picking ready pre-defined tailwind classes like bg-sky-500, etc. Plus they also argue that this workflow will increase productivity by standardizing "style mindsets" of your dev team who all will think "blue" means "sky-500" (for example).

      Maybe it has use cases in deep or professional design work but for most backend or full-stack devs, bootstrap is definitely better than meddling with this structure.