Flexbox-based masonry layout engine with auto-arranging grids, variable-height columns, and dynamic reflow animations.
<link rel="stylesheet" href="https://cdn.get-set.it/gs-flexogrid/latest/gs-flexogrid.min.css"> <script src="https://cdn.get-set.it/gs-flexogrid/latest/gs-flexogrid.min.js"></script>
import FlexoGrid from '@get-set/gs-flexogrid'; export default function App() { return ( <FlexoGrid layout="masonry" > <div className="card">Card A</div> <div className="card">Card B</div> <div className="card">Card C</div> <div className="card">Card D</div> </FlexoGrid> ); }
| Option | Type | Default | Description |
|---|---|---|---|
| count | number | 3 | Masonry target layout column count. |
| gap | string | '20rem' | Grid spacing gap margin. |
| filter | 'all' | 'even' | 'odd' | 'all' | Filtering selector parameter. |
| sort | 'default' | 'asc' | 'desc' | 'default' | Height sorting parameter. |
Calculates child heights and arranges them with zero layout shift.
Auto-adapts column counts dynamically on resize.
Re-calculates grid coordinate matrix once all images complete loading.
Translates custom SCSS constraints to head styles programmatically.