Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Clean and Scalable CSS Architecture (2023)
Rating: 4.7 out of 5(42 ratings)
159 students

Clean and Scalable CSS Architecture (2023)

Write Clean CSS code, create modular CSS and scalable CSS. OOP principles, SOLID, OOCSS, BEM will improve your CSS code.
Last updated 1/2023
English

What you'll learn

  • Understand common CSS issues
  • How to write clean CSS code
  • How to implement Object Oriented principles in CSS (SOLID, DRY, immutability...)
  • What is a good and a bad Specificity graph
  • Understand the concepts of OOCSS and how it can help you improve the code
  • Understand the concepts of BEM
  • How to manage Specificity graph with Inverted Triangle

Course content

6 sections30 lectures1h 19m total length
  • Introduction4:51

    Discover clean, modular, and scalable CSS architecture that mitigates cascade and specificity issues, enabling maintainable, reusable styles driven by selector-based architecture.

  • Stylesheet order issues2:17

    Explore how a monolithic CSS file causes overridden styles due to specificity, and apply object-oriented principles to build a scalable stylesheet that follows design order rather than browser order.

  • Prerequisites1:19

    Assess prerequisites to ensure you’re ready for a non-beginner CSS architecture course. Emphasize understanding the problem over coding and learn to choose the right CSS methodologies for your product.

Requirements

  • good CSS knowledge
  • it would be easier to follow the course if you are familiar with basics of OOP

Description

CSS is easy, it’s easy to learn, it’s easy to write.

But actually, it’s hard to write scalable and maintainable code especially with large projects that require constant scaling…

There are many reasons why this is the case:

- In CSS everything is in a global scope. Any change in one file can cause an (un)expected result in another element, or page.

- CSS is a highly mutable language, because of it's cascade nature. Each mutation leads to confusion and unexpected results.

- CSS highly depends on the source order.

- On the other hand, specificity can undo everything. It doesn't matter how you structure your code, specificity can break everything. Specificity is one of the biggest problems of CSS.

- CSS is not (easily) scalable


We end up in a cycle of writing more CSS just to fix the old CSS! At some point our whole CSS code becomes too messy and too large. We need a better approach, we need a modular and predictable CSS. CSS language has not evolved since 1998. There are preprocessors, but they are not solving the main CSS issues. After all, SASS and Less are compiling to CSS.


In this course, we will talk about the CSS architecture, and how to write clean and maintainable code. Our goal is to write CSS that should be:

- Predictable: CSS rules behave as we expect them to.

- Reusable: When adding new components, we shouldn't need to recode patterns or problems we've already solved.

- Maintainable: New features, components, or updates shouldn't require refactoring our CSS and should NOT break existing components.


The idea is taking the OO philosophy you already learned in Java, PHP, C# and finding a way to translate that into CSS as well. All that you learned in OOP languages, all the DRY principles, SOLID, SRP, immutability we can apply to CSS in some way. Simple is the best.

There are many advanced courses about CSS, about flexbox, CSS animations, CSS grid… However, in this course, we will be focusing on the architecture of CSS. If you are interested in learning how to write clean and scalable CSS code, this course is the right thing for you!

This is a course I wish I had when I started working on more complex projects.

Who this course is for:

  • Medior/Senior Front End developers
  • Anyone who wants to write clean and scalable CSS code
  • Anyone who knows CSS but wants to dive deeper