1.1.3 • Published 2 years ago

simple-react-flex-grid v1.1.3

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

simple-react-flex-grid

Example Grid Layout

A simple flex-grid package for React, that utilizes almost all of the same functionalities as Emotion Flex Grid, but without any additional packages or theming requirements, and is compatible with NextJS App Router.

Getting started

For a detailed description about using the components, please see the Components section.

npm i simple-react-flex-grid
import { GridWrap, GridRow, GridColumn } from "simple-react-flex-grid";

const ExampleComponent = () => (
  <section>
    <GridWrap>
      <GridRow>
        <GridColumn width={[12, 12, 12, 3, 3, 3]}>
          <div>Content</div>
        </GridColumn>

        <GridColumn width={[12, 12, 12, 3, 3, 3]}>
          <div>Content</div>
        </GridColumn>

        <GridColumn width={[12, 12, 12, 3, 3, 3]}>
          <div>Content</div>
        </GridColumn>
      </GridRow>
    </GridWrap>
  </section>
);

Breakpoints

[375px, 768px, 1024px, 1200px, 1400px, 1600px]

Components

This package comes with 3 components: GridWrap, GridRow and GridColumn. With these components you can set up a complete grid for your website. Columns are based on a 12 column grid system. Below you can see a full overview of each component and the props you can pass to each component.

You can pass an array of values (specified below for each component) to set values for different breakpoints (mobile-first).You must specify all six breakpoints.

<GridWrap \/>

Use this component to place your content inside a container with a maximum width. Will always center horizontally. Has a default max-width of 1340px.

PropDescriptionValues
maxWidthmax-widthnumber
<GridWrap maxWidth={1200} />

<GridRow \/>

Use this component in combination with GridColumn. All props are optional.

PropDescriptionValues
wrapflex-wrapwrap nowrap wrap-reverse
alignalign-itemsstart center end
justifyjustify-contentstart center end between around
<GridRow wrap="wrap" align="center" justify="between">
  <GridColumn />
  <GridColumn />
</GridRow>

<GridColumn \/>

Use this component inside a GridRow or use it standalone. All props are optional. When no width is given, columns will automatically flex (when inside a GridRow). The width prop should be either 1 value or an array of 6.

PropDescriptionValues
widthwidth1 to 12 array
offsetoffsetsame as width
alignalign-selfstart center end
orderflex ordernumber
<GridRow>
  <GridColumn width={4} /> // Single width prop that will apply to all breakpoints
  <GridColumn width={[12, 12, 12, 6, 6, 6]} /> // Array of props that will apply to each respective breakpoint
</GridRow>

Inspiration

1.1.3

2 years ago

1.1.2

2 years ago

1.1.1

2 years ago

1.1.0

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago