npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

fastgrid-react

v3.2.3

Published

Official React wrapper for FastGrid and FastSheet, a high-performance TypeScript data grid and web spreadsheet for large datasets, virtual scrolling, tree data, pivoting, XLSX and AI.

Readme

fastgrid-react — React Data Grid and FastSheet Spreadsheet

npm version npm downloads TypeScript React 16.14+

fastgrid-react is the official React wrapper for for FastGrid and FastSheet by COQsoft.

Use it to add a high-performance React data grid, React tree grid or React spreadsheet to a JavaScript or TypeScript application. FastGrid provides virtual scrolling, large-dataset rendering, editable cells, sorting, filtering, grouping, pivoting, tree data, formulas, XLSX/CSV import and export, charts, conditional formatting and AI-assisted grid operations.

React integration documentation · FastGrid · FastSheet

Installation

npm install fastgrid-react

Quick start

import { useMemo, useRef } from "react";
import { FastGrid } from "fastgrid-react";

export default function App() {
   const gridRef = useRef(null);

   const src = useMemo(() => ({
      Cols: [
         { id: "Name", Width: 180 },
         { id: "Country", Width: 140 },
         { id: "Orders", Type: "Number", Width: 100 }
      ],
      Head: [{
         D: "Header",
         V: {
            Name: "Customer",
            Country: "Country",
            Orders: "Orders"
         }
      }],
      Body: [
         { V: { Name: "Alice", Country: "United States", Orders: 120 } },
         { V: { Name: "Bob", Country: "Germany", Orders: 85 } },
         { V: { Name: "Carol", Country: "Japan", Orders: 164 } }
      ]
   }), []);

   return (
      <FastGrid
         ref={gridRef}
         src={src}
         style={{ height: 500, width: "100%" }}
      />
   );
}

Trial and registered runtime

The default entry point contains the FastGrid/FastSheet trial runtime:

import { FastGrid } from "fastgrid-react";

For a purchased runtime, use:

import { FastGrid } from "fastgrid-react/registered";

The registered entry point does not load FGridE.js. Supply the registered runtime separately:

<script src="/FGridE.js"></script>

or:

import "./FGridE.js";

Do not publish a registered FGridE.js or serial code to npm or GitHub.

FastGrid and FastSheet

Both products use the same runtime.

Use FastGrid for:

  • React data grids and editable data tables;
  • tree grids and hierarchical data;
  • virtual scrolling over very large datasets;
  • sorting, filtering, grouping and searching;
  • pivot grids and aggregation;
  • row and column sets;
  • XLSX, CSV, HTML and PDF export.

Use FastSheet for:

  • browser-based spreadsheets;
  • XLSX workbook and sheet editing;
  • formulas;
  • spreadsheet formatting;
  • images and charts;
  • multiple worksheets;
  • AI-assisted spreadsheet operations.

Accessing the API with ref

import { useRef } from "react";
import { FastGrid } from "fastgrid-react";

function Example() {
   const gridRef = useRef(null);

   function readValue() {
      console.log(gridRef.current?.Get(1, "A"));
   }

   function writeValue() {
      gridRef.current?.Set(1, "A", "", "Updated", 1);
   }

   return (
      <>
         <FastGrid ref={gridRef} src={src} />
         <button onClick={readValue}>Read value</button>
         <button onClick={writeValue}>Write value</button>
      </>
   );
}

The wrapper forwards the FastGrid API through the React ref:

gridRef.current?.Get(...)
gridRef.current?.Set(...)
gridRef.current?.GetValue(...)
gridRef.current?.Reload(...)
gridRef.current?.Export(...)

React event props

FastGrid events are exposed as React props:

<FastGrid
   src={src}
   onSetValue={onSetValue}
   onReady={onReady}
   onClick={onClick}
/>

The wrapper maps:

onSetValue → FastGrid OnSetValue
onReady    → FastGrid OnReady
onClick    → FastGrid OnClick
onFilter   → FastGrid OnFilter
onSort     → FastGrid OnSort
onSave     → FastGrid OnSave

Example:

function onSetValue(grid, row, col, value, changes) {
   if(changes && row && col) {
      console.log("Changed", row.id, col.id, value);
   }
}

function onClick(grid, row, col) {
   if(row && col) {
      console.log("Clicked", row.id, col.id);
   }
}

TypeScript

The package includes TypeScript declarations for the React wrapper and the FastGrid API.

import { useRef } from "react";
import { FastGrid } from "fastgrid-react";

const gridRef = useRef<TGrid | null>(null);

function onSetValue(
   grid: TGrid,
   row?: TRow,
   col?: TCol,
   value?: unknown,
   changes?: number
): void {
   console.log(grid.id, row?.id, col?.id, value, changes);
}

Large datasets and virtual scrolling

FastGrid is designed for large browser datasets and uses virtualized rendering to avoid creating DOM nodes for every row and cell.

Benchmark your real configuration because performance depends on:

  • browser and device;
  • row and column layout;
  • enabled features;
  • custom formulas and event handlers;
  • HTML cell content;
  • data format and loading strategy.

AI-assisted React data grids

FastGrid can expose grid structure, data descriptions, permissions and custom API functions to an AI provider. Depending on configuration, AI can assist with:

  • searching and analyzing grid data;
  • filtering, sorting and grouping;
  • selecting or editing cells;
  • generating formulas;
  • manipulating large spreadsheets;
  • exporting and formatting.

Never place a production AI API key directly in a public React bundle. Use a secured server-side bridge or another approved credential mechanism.

React SSR and browser rendering

The FastGrid runtime is browser-oriented. With Next.js, Remix, Astro or another SSR framework, initialize the component only in the browser when required by the runtime and application architecture.

Documentation

FAQ

Is fastgrid-react the official React wrapper for FastGrid?

Yes. It is the official React integration maintained for FastGrid and FastSheet by COQsoft.

Is the React wrapper open source?

Yes. The React wrapper source code is open source. The included trial runtime and externally supplied registered FGridE.js are covered by separate FastGrid/FastSheet trial or commercial terms.

Does the package include FastGrid?

The default entry point includes an evaluation runtime. Licensed production applications use the fastgrid-react/registered entry point with a separately supplied registered FGridE.js.

Can the wrapper display FastSheet spreadsheets?

Yes. FastGrid and FastSheet use the same runtime and React component. Available functionality depends on the runtime license and enabled features.

Does it work with the latest React version?

The peer dependency intentionally supports React 16.14 and newer without an upper version limit. Current and future React versions should still be tested because a future React release can introduce breaking changes.

Can FastGrid handle millions of rows?

FastGrid is designed for very large datasets and virtual scrolling. Actual limits and performance depend on the grid configuration, browser, data format and application logic.

Does FastGrid replace an HTML table?

FastGrid is intended for interactive data-grid and spreadsheet applications. For a small static table, a standard HTML <table> may be simpler.

Can I use FastGrid without AI?

Yes. AI integration is optional. FastGrid can be controlled entirely through its user interface and JavaScript/TypeScript API.

License

The React wrapper source code is open source under the terms in LICENSE.md.

The included trial FGridE.js and any generated or embedded representation of that runtime remain commercial COQsoft evaluation software. Production use requires an appropriate FastGrid/FastSheet license and an externally supplied registered runtime.