Skip to content
This repository has been archived by the owner on Mar 7, 2023. It is now read-only.


Repository files navigation

React + Foundation

Build Test Coverage Maintainability StyleCI npm version npm downloads License

Foundation as React components.


Components with Bit


Foundation is both feature-rich and easy to customize. React on the other hand is awesome because of its simplicity. It's even more awesome when combined with Redux and Immutable.

After building quite a few applications with React and Foundation we noticed that we were writing the same components over and over again. First we tried to find a library that would do the job, but there was none that met our needs. So we collected our notes, started coding and here's the result.

We hope you enjoy it as much as we do!

What's in the box?

The goal is to wrap every part of Foundation into re-usable React components following the framework's best practices. The primary focus is ease-of-use and extensibility. We use pure render components, also known as stateless components, whenever possible to keep the memory usage to a minimum. Stateful components are only used for larger components, such as ResponsiveNavigation, where state is actually necessary. All components are unit-tested to ensure their quality.

Here is a list of the available components:

More components coming soon!


Install library:

npm install react-foundation --save

Install foundation-sites:

npm install foundation-sites --save


// Add Foundation to index.js
import 'foundation-sites/dist/css/foundation.min.css';

// import components
import { Button, Colors } from 'react-foundation';

// Use components ...
function SubmitButton() {
  return <Button color={Colors.SUCCESS}>Submit</Button>;

Documentation is at

Note: Newer versions of foundation-sites do not offer out of the box support for <Row/> and <Column/> components. If working with a newer version, <Grid/> and <Cell/> components should be used instead.

// Previous versions
<Row className="display">
  <Column small={2} large={4}>4 columns</Column>
  <Column small={4} large={4}>4 columns</Column>
  <Column small={6} large={4}>4 columns</Column>

// Newer versions
<Grid className="display">
  <Cell small={2} large={4}>4 columns</Cell>
  <Cell small={4} large={4}>4 columns</Cell>
  <Cell small={6} large={4}>4 columns</Cell>


Please read our guidelines.


  • Thanks to Nord Software and Digia for sponsoring initial development.
  • Thanks to @jmreidy for releasing the react-foundation package name to us on NPM.