What you'll find in the component library

Components

/ui/components/

Atomic components that can be used to build your project.

Page sections

/ui/page-sections/

Page sections make up the stucture of most of our projects. The component library aims to have a selection of our most commonly used page sections - <TextMediaSection />, <CtaTeaserSection />, <AccordionSection /> etc.

Structure

/ui/structure/

Structure is what makes up the overal layout of your project. It includes Navbars & Footers and other structural layout elements.

Primatives

/ui/primatives/

To separate logic from presentation some of our components have a primative version which includes only the logic and no styling. They're also useful for building multiple versions of a component. For example, you might want two different styles of <Accordion /> and you can can use the primative version to build them both, applying different styles to each.

Hooks

/ui/hooks/

Sometimes we extract component logic into hooks. They might be for DOM maniplation, managing complex state or controlling user interactions.

Utilities

/lib/

This folder currently only contains the cn utility function which we use for building Tailwind classes.