Design Patterns

Check out design patterns created by Fluid and other contributors in the Open Source Design Pattern Library!

What is a Design Pattern?

According to architect Christopher Alexander, the father of the Pattern Language movement in computer science, a pattern is "a proven solution to a common problem in a specified context." Thus, each pattern is a three-part rule, which expresses a relation between a certain context, a problem, and a solution.

Design patterns serve as tools to communicate ideas, solutions, and knowledge about commonly recurring design problems. User interface design patterns help designers and developers create the most effective and usable interface for a particular situation.

Patterns can be expressed hierarchically, with each level representing a different level of granularity, and there may be many different ways to (physically) implement each pattern.

For more information on design patterns, see the General Design Pattern FAQ.

How to Write a Good Design Pattern

The How to Write a Good Design Pattern page gives background information on design patterns followed by guidelines and advice on writing helpful and effective patterns. It should be of interest to pattern authors, designers, and solution implementers, as well as anyone else interested in how patterns can contribute to the creation of well-crafted user interfaces.

Open Source Design Pattern Library

Once you've written a design pattern, how can you share it with others? The Open Source Design Pattern Library (or OSDPL) is a free and open resource created by the Fluid Project where developers and designers can collaboratively create, share, and discuss user interface design patterns.

You can visit the Open Source Design Pattern Library to see the latest progress on the project and to begin participating!

How you can help the OSDPL

If you are interested in assisting in this effort, here are some helpful links:

  • Contribute a design pattern to the OSDPL
  • Join the fluid-talk mailing list
  • Test the OSDPL by trying it out and giving us feedback
  • Drupal and CSS help is needed. Please drop us a line to become a volunteer!

Fluid Design Pattern presentations

Design Pattern Resources

UI Design Pattern Libraries

UI Design Pattern Screenshot Collections

Other Design Pattern Resources