Atomic Design


Designing UI Systems Methodically






Tommy Cresine

What is Atomic Design?

Atomic design is a methodology for creating design or UI systems that will continue to grow and evolve over time. By creating a base set of building blocks, interfaces can be structured by combining these elements.

 

Atoms

Atoms are the most basic HTML tags or elements such as inputs, labels or buttons. However, more abstract elements like color palettes or animations can be considered atoms.


Molecules

Combining atoms or basic elements will create UI components that contain their own attributes or behavior.


Organisms

Just like before, organisms are the next aggregate in the system by combining various molecules to create more complex, distinct sections of an interface.


Templates

Once we have our backbone created for the UI system, we can start conveying ideas in a way that makes more sense to the business. Templates contain various organisms to create page layouts.

Pages

Pages are instances of templates where the placeholders are filled with relevant content.

Why Atomic Design?

  • Provides a consistent and concise pattern for developers, designers, and business.
  • Traverse from abstract to concrete ideas by assembling rather than deconstructing or cherry picking design patterns later on.
  • Promotes scalability and modularity allowing that goes hand in hand with AngularJS component development.
  • Living style guide generation is much easier when following a consistent pattern.

Style Guide Generation

Tools such as Hologram, Fabricator or KSS can compile the design system into a living style guide by parsing comments within the code into readable documentation and examples.

Credits

Atomic Design by Brad Frost
http://bradfrostweb.com/blog/post/atomic-web-design/

Atomic Design

By tcresine

Atomic Design

  • 1,415