The key seems to be...
import * as React from "react";
import { GridLayout } from "@egjs/react-infinitegrid";
Note: this looks to add about 180k of gzipped JS on top of React's baseline, the demo is about 252K gzipped. Definitely not a *light* implementation in any way, shape or form. If this is the bulk of your UI, it may not be so bad... I generally try to stay under 500k total gzipped JS payload for web applications.
https://www.npmjs.com/package/@egjs/react-infinitegrid
https://github.com/naver/egjs-infinitegrid