Web development is a thriving field, with thousands of web developers and hundreds of technologies available to help great developers achieve their goals.  Navigating through the available options can be confusing and overwhelming for novices and even experienced ones. There is literally a framework or library for everything.

When choosing between using CSS vs a UI framework, the answer is completely dependent on you and your needs, which we will discuss in the rest of this article.

Advantages of Libraries & Frameworks

  • Pre-written code → less work to get started
  • Consistency → styling looks the same across the site

The biggest and most obvious advantage of pre-written code is that it is pre-written, so you have much less work to write everything from scratch. Like if you use React and you use Material UI then you get a lot of subtle animation in button styles. This is one of the most useful things in MUI, and in most cases, you don’t have to worry about whether your website will be responsive or not.

Another great thing you can achieve is consistency, where your designs look the same across the site. This is because you are mostly referring to the same components.

If you want to get some projects done quickly and don’t care too much about the design, it’s better to use some framework or library because it will do a lot of work for you.

Drawbacks of Libraries and Frameworks

  • Pre-written code → hard to modify code
  • Consistency → UI is similar to “other” sites
  • External libraries can be clunky at times

In fact, everything has pros and cons, the first disadvantage is the pre-written code. This is a subjective point as it depends entirely on the person doing it. For starters, it can be difficult to customize a lot. Whereas if you use CSS, you get unlimited flexibility.

Another downside that I think and is the norm for people using Bootstrap is that sites made with Bootstrap look like Bootstrapped Sites. This is true for beginners, but experienced people can easily solve this problem. So again, it depends. Another problem could be that the extra library can have poor documentation, and your precious development time may be consumed in fixing one-off errors/ searching online for solutions to some unique scenario.

Verdict

Personally, I have used both of these methods to create websites, but over time I have moved to CSS’s side and reserve the Frameworks for heavy components like graphs or calendars.

As a user you won’t be able to spot the difference, but as the developer the main difference is in development time and customizability.

If you are a web developer then you should not be afraid of CSS. Writing your own CSS will greatly improve your CSS knowledge and allow you to create lightweight and beautiful components.