Back to components
ComponentTableFree

Spreadsheet Grid React component

A small spreadsheet in a card: lettered columns and numbered rows, click, drag or shift-select ranges, type to edit, a formula bar, a formula engine with SUM, AVERAGE, MIN, MAX and cell maths, colour-coded reference outlines, live sum / average / count, copy-paste and undo.

About the Spreadsheet Grid component

Spreadsheet Grid is a small, real spreadsheet you can drop into a page: lettered columns, numbered rows, a formula bar and formulas that recalculate as you type. It handles SUM, AVERAGE, MIN, MAX, COUNT, ROUND and ABS, cell maths with + − × ÷ ^, and shows errors like #DIV/0! the way spreadsheet users expect.

Select with a click, a drag or shift + arrows, and the footer shows the sum, average and count. Type to edit, paste from Excel or Google Sheets, copy back out, and undo. When a formula is selected, the cells it uses are outlined in colour.

When to use it

Use it for budget and pricing calculators, editable data in admin tools, onboarding imports, quote builders and anywhere people expect to type numbers into a grid.

It's built for small sheets (dozens of rows); for thousands of rows of read-only data, use a virtualized table.

Installation

Add the Spreadsheet Grid component to your project with the shadcn CLI. It lands in components/spreadsheet-grid.tsx as plain React + Tailwind CSS source you own and can edit.

Install
Copied!
npx shadcn@latest add @reactframe/spreadsheet-grid

Or copy the source by hand and install its dependencies:

Install
Copied!
npm install clsx tailwind-merge

Related components

Expandable Row Table
Free
Comparison Table
Frozen Columns Table
Free
Heatmap Table
Free
Canvas Transition Carousel
Arc Coverflow Carousel