Frequently I hear the case for not using Bootstrap when developing a responsive website because it’s “too heavy”. And the proposing developer recommends using an obscure grid framework that weighs less than 1k in its place.
I love levity and brevity as much as the next designer, but I also feel like stepping into the breach here to defend the intelligent architecture and practicality of the bootstrap framework.
First of all, Bootstrap is not heavy. You cannot compare a 1k grid framework (helium.css?) with a fully loaded bootstrap, which I often think is the mistake: Bootstrap has been intelligently engineered, if you only want the grid, then comment out all the other items you don’t need, and they won’t be compiled. The bootstrap grid is not the holy grail, but it’s totally fine for 95% of the sites you usually build.
Secondly, in practice, what often happens is intelligent developers who use helium.css are then requested to put in some tabs into the website. So, dutifully, said developer scours google for the lightest tab component they can find and paste it into their developing framework.
I think you can see where I am going. This “lightweight” website slowly starts to gain weight as we paste component code from various locations into our framework: Common components such as Tabs, Accordions, Modal Overlays, even Forms & buttons are then “cherry-picked” from various places for their weight and added to Frankstein’s library.
What we end up with is a poor-mans bootstrap whose dislocated parts can not intelligently share syntax internally (therefore requiring more code), and offer a confusing polyglot class syntax externally (a nightmare to document and maintain).
Thirdly, Bootstrap has a dedicated community (the largest on Github) dedicated to its maintenance: ensuring cross-browser compatibility, and providing regular updates and improvements.
Fourthly, the “all bootstrap sites look the same” argument is a non-sequitur: Bootstrap offers complete flexibility in its layout and “Look & Feel”. Oftentimes developers use bootstrap — without a designer — with the standard settings, possibly changing some colours. Some lazy designers also use bootstrap defaults.