JSPM

  • Created
  • Published
  • Downloads 23856
  • Score
    100M100P100Q141313F
  • License MIT

A set of React components implementing flexboxgrid with the power of CSS Modules

Package Exports

  • react-flexbox-grid
  • react-flexbox-grid/lib
  • react-flexbox-grid/lib/index

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-flexbox-grid) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

react-flexbox-grid

npm version Build Status NPM Status

React-Flexbox-Grid is a set of React components that implement flexboxgrid.css. It's built on top of some the trendiest proposals like CSS Modules (written in SASS), Webpack and ES6. The library harmoniously integrates with your Webpack workflow and it's easily customizable and very flexible.

http://roylee0704.github.io/react-flexbox-grid/

Usage

Although there are other ways to use React Toolbox, the recommended way is to create a Webpack workflow with Babel Loader, CSS Loader and SASS Loader. A good starting point is React Hot Webpack Boilerplate

react-flexbox-grid-example

Basic webpack configuration

You probably don't want to load all dependencies with the CSS Modules feature, so you can add this very targeted piece of configuration as a webpack loader:

{
  test: /\.scss$/,
  loaders: ['style', 'css?modules', 'sass'],
  include: path.resolve(__dirname, './node_modules/react-flexbox-grid'),
}

But make sure your other CSS loaders don't pick it up. If, for example, there is a loader which includes all SCSS files in node_modules, you can exclude this module by using exclude:

{
  test: /\.scss$/,
  loaders: ['style', 'css?foo=bar', 'sass?config&anotherConfig'],
  include: path.resolve(__dirname, './node_modules'),
  exclude: path.resolve(__dirname, './node_modules/react-flexbox-grid'),
}

Example

Looking for example to use react-flexbox-grid? Head over to react-flexbox-grid-example and by following 3 simple instructions, the example page will be up and running at your machine :)

Installation

React Toolbox can be installed as an npm package;

npm install react-flexbox-grid

Once you have the workflow ready, you can just require and use the components:

import React from `react`;
import { Grid } from `react-flexbox-grid/lib/index`;

React.render(<Grid />, document.querySelector('#main'));

The previous code creates a React container component based on React Flexbox Grid container. It's important to notice that requiring a module from the exposed root of the package will import the SASS of the component.

I encourage you to work with webpack but if you want to use React Flexbox Grid in an old fashioned way, you must generate a build with all the css and javascript and include it in your index.html. Then you can use the components exposed in the window object.

Code snippets

const {Grid, Row, Col} = require('react-flexbox-grid');

const App = React.createClass({
  render() {
    return (
      <Grid>
        <Row>
          <Col xs={6} md={3}>Hello, world!</Col>
        </Row>
      </Grid>
    );
  }
});

Contributors

Roy Lee Helder Santana Ankit
Roy Lee Helder Santana Ankit

License

MIT