{"repo":"jaredLunde/masonic","free":true,"listed":false,"github":"https://github.com/jaredLunde/masonic","clone":"git clone https://github.com/jaredLunde/masonic.git","description":"🧱 High-performance masonry layouts for React","language":"TypeScript","stars":1407,"topics":["react","virtualization","virtualized","masonry","list","infinite-scroll","window","hooks","react-hooks","masonry-component"],"license":"MIT","category":"ui-components","readme_excerpt":"🧱 masonic npm i masonic A performant and versatile virtualized masonry grid for React based on Brian Vaughn's react-virtualized and further inspired by react-window. Using Masonic, you're not just getting a component. You're getting the implementation details, as well, meaning advanced usage requiring little code is possible. Features - [x] Easy to use It takes two minutes to start creating your own masonry grid with this component. For real, check out the demo on CodeSandbox . - [x] Blazing™ fast This component can seamlessly render tens of thousands of grid cells without lag via its virtualization algorithm and underlying data structures. For example, it uses a red black interval tree to determine which cells to render, based upon the scroll position and size of the window the grid is rendered in. Interval trees have O(log n + m) search performance 😱. - [x] TypeScript Intellisense and type safety mean fewer bugs in your implementation. - [x] Versatility All of 's implementation details (hooks, utilities) are exported, so you're not locked into to the default implementation. As you advance, it will be useful to have access to those internals. It's also possible to kick the virtualization out of the equation by providing an Infinity value to the overscanBy prop, though this would be a terrible idea for large lists. - [x] Autosizing The default component will automatically resize itself and its items if the content of the grid cells changes or resizes. For example, when an i","default_branch":null,"files":null,"tree":[],"storefront":"/r/jaredLunde","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/jaredLunde/masonic/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}