Hey there DEV.to community!
Edit: I had to write this edit since I'm getting lots of negative comments. This article wasn't supposed to be hateful or condemning Bootstrap. This is only about the things I think Bootstrap lacks in. Please accept my apology in advance if you feel insulted or this article gives you bad feelings.
Edit 2: Since lots of comments warned about my bad title picking ability. (XD) I changed the title from 'Please avoid Bootstrap!' to 'What are some alternatives for Bootstrap?'. I hope this post doesn't get the most hated DEV.to post in the past 7 days. XD
Well, actually I was thinking about writing this article a while ago but I was afraid of the reactions that I might get. Anyway, I decided to do it and I hope you enjoy this article.
DISCLAIMER: This article is based on my own perspective and I DO NOT force it on anyone. I neither created Bootstrap nor sponsored by any others to write this article. (Well I'm not that famous to be sponsored anyway LOL)
Why do I not like Bootstrap?
Well, the best thing to start with would be why I don't like Bootstrap.
The same look over and over
First things first are that almost 90% of Bootstrap using websites look exactly the same. Although this can be changed, usually designers don't bother with such options so they use the default look and theme.
You can search Google and see all discussions about this thing with lots of samples.
Not that much modern-looking
Second thing is that Bootstraps look isn't that polished. It was for a time but I believe now the design pattern is changed and bootstrap is kind of behind.
Not supporting RTL
Well, this can be situational and not all designers would use this but still, it is a problem that might irritate some middle-eastern based countries' designers.
Something extra: When I was choosing to learn a CSS framework Bootstrap wasn't supporting flex containers so this was another reason I started avoiding Bootstrap at that time. Which now it does support Flex since version 4 I believe.
Have I ever tried Bootstrap?
For those who might say: "Adnan if you tried Bootstrap for once, you would love it." I have to say: "I designed lots of websites using Bootstrap due to the clients' demand"
So basically YES I tried Bootstrap.
What do I use then?
Since I'm not using Bootstrap it doesn't mean that I code the whole CSS by myself (It is ridiculous).
I have some tools in order to get my projects done.
Zurb Foundation
Foundation is my go-to framework. I love using it since I'm pretty much fluent in it and it provides very good SASS/SCSS compatibility and a very rich customization system.
Zurb Foundation is the most advanced CSS framework I believe.
The only down point that Foundation can have is its incompatibility with Webpack which you cannot import Foundation's JavaScript library to a bundle.
Semantic UI
Semantic UI is the most polished-looking and modern-feeling framework ever I believe.
It is so beautiful and elegant that you would fall in love with it.
Semantic UI has full compatibility with React which I enjoyed using and also almost complete compatibility with Vue. If you don't want to use it as a component and only as a normal CSS framework in Vue or React it has no boundaries and by compatibility, I only mean component-based library for this framework.
Tailwind CSS
Tailwind is one of the newest CSS frameworks out in the development world and it's gaining lots of attention recently.
I started using Tailwind recently and I can say it can be my next go-to framework since it aims at rapid development and, to be honest, it has reached this goal I believe.
Tailwind is a little bit different than other frameworks since it is a utility-first framework as they say and it provides you to design your own look rather than a default look.
Tell me if you are using other CSS frameworks or why you love Bootstrap in the comments section below.
Top comments (80)
Why is the title of this article alarmingly telling everyone "Please avoid bootstrap!" and then in the 2nd paragraph you have a disclaimer stating it's just your opinion and shouldn't be forced on anyone.
Maybe a better idea would be not to use such a clickbait-y title in the first place, such as "Reasons I dislike Bootstrap", then you wouldn't be obliged to include a disclaimer in the first place.
You were probably afraid of the reactions you might get because deep down you know this isn't the right way to draw attention to yourself
Hi
Thanks for your comment.
I actually had no intention of click baiting people and drag them here. I was kind of afraid of the reactions and I mentioned it at the beginning.
Anyways please accept my apology if I cause you any inconvenience.
Hey, no worries. Don't worry about causing me inconvenience - I don't personally care much but a lot of people on the internet do. So it's just advice to help you maintain a higher quality for your personal brand :)
Thanks for the advice
Don't all CSS frameworks have a default look and need to be grokked at to customize? The purpose of Bootstrap is to abstract-out the low-level nitty-gritties of CSS for Devs who are not CSS experts/Front end engineers, but need to deliver someting professional looking. And it is amazingly successful in this space. Thats why the popularity. It may come as a shock to some, but a majority of people working in Enterprise space don't really care about FlexBox/CSS transistions and what not. Bootstrap comes to the rescue here and does its job really well.
Tailwind should not be called a framework at all as it does not abstract out anything.
As a mostly part-time programmer, full-time server administrator, there are times when I just need a simple page that gets data from an API or something for internal uses. Bootstrap fits the purpose perfectly, and it takes me less than an hour to make a decent UI for my purpose.
Hi
Thanks for your comment. You have good points of view that I might missed.
Thanks again for sharing this wit us.
I agree with a lot of what's being said in the comments tbh.
Bootstrap has it's place and it might not look great out of the box but it's a great base to build from. Not only do you learn some good css tricks but if you adapt and extend the library for your own use, it can be a power tool :)
Hi
Thanks for your comment.
Yes Bootstrap is a great framework and I have no doubt in it.
This was only my reasons that I don't like Bootstrap.
Thanks again.
If it's a "great framework" then why would you write an article explicitly telling people to avoid it? Also, as you're going around and apologizing to everyone for having a clickbait-y title, why not just change the title if you didn't mean for it to be
1) clickbait-y
2) a warning for people to not use bootstrap?
🤔
Secondly, don't Foundation and Element suffer from the exact same issues as Bootstrap? Except it seems that Foundation is the one to have the only actual issue - of not being compatible with modern build tools (Webpack), no?
Hi
I appreciate your comment.
I'm only apologizing for the feelings I caused.
I will change the title for sure. (To be honest, I didn't even think about it.)
I am not even earning any money from this so click-baiting isn't my purpose anyhow.
Absolutely no harm done and I hope you don't feel a need to constantly apologize to everyone. It's a big industry and it's hard to always please everyone :)
FYI clickbait can also be used simply to grab attention/views, it's not only about monetization.
Lastly, to also provide something useful to this thread from my end, I quite like the visuals of Element UI. It has that modern look that Bootstrap and Semantic seem to lack
Oh thanks
This was very heartwarming.
And yes I've seen Element UI and it is literally beautiful.
In the real world, many business cases dictate that the design isn't as important as the functionality.
I've seen many companies use bootstrap for backend portals for internal use only. You don't need a flashy design, it just has to be functional.
Maybe you're a startup with limited funding and time, building a minimal viable product in the hope to gain investment. Bootstrap can be a useful tool to throw together a layout.
Hi
Thanks for your comment
In that case, yes, Bootstrap can buy you a lot of time in development as well as other frameworks.
The reason I don't use Bootstrap is that it goes against everything semantic. Tailwind, however, is way worse.
Hmmm. Interesting reason, and now I think you are pretty right about it.
Before Bootstrap I had a lot of trouble delivering simple business pages, let alone make them responsive. Bootstrap worked its magic for me, same as codeigniter. And I learned a lot a lot of CSS in the process. These tools allowed me to focus on the application logic instead so I'm very thankful, doesn't matter if they're not fancy.
Hi
Thanks for your comment
Yes working with Bootstrap or other frameworks can make you faster in developing. The point of article was to share with you the reasons I have for not using Bootstrap.
Thanks again for sharing your experience with us.
When you put a title saying "avoid", normally any dev in the world thinking about a backdoor. The way you continue your article then make no connection with the title itself. If you have any concern about the framework then you have to say what concerns you, using a strong word like "avoid" attract misunderstanding and make people like me would less respect to your articles anymore.
Hi
Thanks for your comment.
I'm sorry if I disappointed you. I just wrote this to share some reason I have that I don't like Bootstrap.
Sorry for the title again.
I hope I gain your trust again.
Good points and alternatives!
A big reason Bootstrap was invented and adopted was because of the grid.
Now with CSS Grid I think these libraries are less useful. Especially once we have wide subgrid support.
Hi
Thanks for your comment.
Ues of course but I still believe using frameworks would actually help us even nowadays.
My only comment is: "If you haven't tested or used Bootstrap 4, it's pointless to criticize something that you don't know" Since your article could be invalidated with Bootstrap 5 that is already on going or any future version.
I'm not saying that Bootstrap is perfect, but you have sections like: "Which now it does support Flex since version 4 I believe." If you add the expression: "I believe", it means you didn't do your homework and research, and you are only going to get bad publicity from the most experienced members because you could have started to code very young, but you haven't learned some very important lessons in life like: "Ask for feedback and research before publishing any article."
Hopefully, your next article would be based on facts, checking sources (Google your thoughts doesn't take too much) and not coming with sections that contain: "I believe" since that reduce your credibility significantly, looking forward to your next article.
Hi Federico
Thanks for your comment and your advice.
The expression "I believe" didn't mean to be reflecting that I didn't research. Actually, I even used Bootstrap 4 in lots of my projects. That section was an extra note I added to the post.
Anyways thanks for your advice and I will try to avoid such things in my next article.
Good, still, the most important lesson: "Ask for feedback." Any time you're going to bring a controversial topic, you need to be smart and I'd recommend you to read:
"How to Win Friends and Influence People."
There is one edition for the Digital Age.
Oh nice
Thank you so much
I will read it for sure
I agree with almost everything you are saying, but I won't say that everyone should avoid it. I think bootstrap can be really useful to learn UI principles ( Or at least that was my case) Also thank you for posting about Semantic UI, I did't know about that framework.
Hi
Thanks for your comment.
Actually I think if people start learning web design with Bootstrap or even other frameworks they won't have the ability to understand the CSS properly, at least for a long time.
And yes Semantic UI is incredible.
This is me, which is why i'm trying to improve now my CSS skills. I've though back then if i can do Bootstrap, I am great. Lol what a newbie thinking. Though it is still good on some cases.
Some comments may only be visible to logged-in visitors. Sign in to view all comments.