UI Kit is dead
NOTE: This has nothing to do with uikit. It is unfortunate that I chose such a generic name for my side project.
For a long time I have been thinking about and prototyping various APIs and patterns for a pattern library I was calling UI Kit. Having created a grid system, type system, and numerous other tools with friends at team-sass a UI kit seemed like the missing link to compete with rapid prototyping frameworks like Foundation and Bootstrap. The tools I build do not dictate how
HTML or the design of the site should look but they are instead tools to help you reach your own design ideals. While I came close to making UI Kit as un-opinionated as I possibly could in terms of markup the un-opinionated design was dull and patterns were a little too strict. The more I studied how people use big frameworks the more I notice that most people aren’t re-writing core styles but either just using the styles or overriding them while staying inside the box in terms of what the resulting site should look like and how it should behave.
Learn CSS, not the framework
When introducing Pattern Lab at Beyond Tellerrand 2013 Brad Frost kept repeating “do that shit yourself” and I can’t agree more. I constantly see people in this industry just dumping styles into their sites with no regard for what those styles are doing and how they actually work. You, the person making the website, need to think critically about what UI pattern is appropriate for your content, what styles reflect the voice of that content, and how that CSS might bloat your stylesheet. You should never have to bend or break the needs of your content to satisfy a framework. As much as any pattern library might try it will never include every possible pattern or every possible solution.
CSS isn’t voodoo, it’s a simple and straightforward language where you declare an element has a style and it happens. I don’t want a web where I see the same patterns over and over again. Lets build a web that surprises and delights people instead of serving up the same blue buttons over and over again. This isn’t rocket science and you can do this just as well as me, Twitter, ZURB or any one else can. In fact, you can do it better than anyone else because you are on the ground working on whatever project you are working on and understand the unique challenges far better than anyone else. So again, do that shit yourself.
Long live UI Kit!
Frameworks serve those who make them the most. ZURB uses Foundation on client projects and Bootstrap served as a good library and style guide for Twitter projects. Custom libraries for every project along with abstractions shared between projects seems like a better approach to keep things maintainable yet still innovative. I will continue to share and publish new UI stuff and tools to help with building websites as well as develop site specific patterns. It’s just the generic pattern library idea that has died. Don’t look at me for all these answers, you know your project and are far more qualified to find your own. So do that shit yourself.