Skip to content


The components are the building-blocks of all nib experiences.

Working with components

Our components are distributed individually via npm. This allows us to increment package versions only for the components that have been updated.

Each component fully encapsulates its markup, styling and functionality.


npm install @nib-components/button @nib-components/heading @nib-components/copy


import {PrimaryButton} from '@nib-components/button';
import Heading from '@nib-components/heading';
import Copy from '@nib-components/copy';
const Page = props => (
<Heading size={1}>Hello world</Heading>
<Copy>Lorem ipsum dolor sit amet, consectetuer elit.</Copy>
export default Page;

Note: These npm packages are private and you will need to be a member of our npm orgs to access them. Request access

Component status

For a complete list of Mesh components and their implementation status across a variety of formats, see the Component status page.