Introduction

Why create another component library when there are so many out there? Simple - I want to.

Using the component library that is being implemented at work has been illuminating on the issues that face people building a component library. I thought that perhaps by building my own, I may be able to better understand the issues that can lead to less than ideal implementations.

Also, I've never built a proper library before, so I thought it would be a good excuse to do so.

What it isn't

It's not a design system, nor is it particularly beautiful. It's not really intended for anyone other than myself to use in earnest, however, seeing it in use would be awesome.

What it is

It's a pretty simple UI component library built with React and styled-components. It's intended to be completely themeable, with the theme having been (loosely) based on the System-UI theme specification.

It doesn't include complex components, mostly just a range of base UI components.

In addition to basing the theme on System UI, I've also built a bunch of hooks to simplify retrieval of theme values within components.