@alaarab/ogrid-react-fluent
v2.0.11
Published
OGrid Fluent UI implementation – DataGrid-powered data table with sorting, filtering, pagination, column chooser, and CSV export.
Maintainers
Readme
OGrid data grid for Fluent UI v9. Also available for Radix UI (default, lightweight) and Material UI. Same API, just swap the import.
Why OGrid?
| | OGrid | AG Grid Community | AG Grid Enterprise | |---|---|---|---| | Spreadsheet selection | Built-in | - | $999/dev/year | | Clipboard (copy/paste) | Built-in | - | $999/dev/year | | Fill handle | Built-in | - | $999/dev/year | | Undo/redo | Built-in | - | $999/dev/year | | Context menu | Built-in | - | $999/dev/year | | Status bar | Built-in | - | $999/dev/year | | Side bar | Built-in | - | $999/dev/year | | Cell editing | Built-in | Built-in | Built-in | | Sorting & filtering | Built-in | Built-in | Built-in | | License | MIT (free) | MIT | Commercial |
Features
Sorting · Filtering (text, multi-select, date range, people picker) · Pagination · Cell editing (inline, select, checkbox, rich select, date, custom popover) · Spreadsheet selection · Clipboard · Fill handle · Undo/redo · Row selection · Column groups · Column pinning · Column resize · Column chooser · Side bar · Context menu · Status bar with aggregations · CSV export · Grid API · Server-side data · Column state persistence · Keyboard navigation (Excel-style Ctrl+Arrow) · Built-in column types (text, numeric, date, boolean) · React 17/18/19 · TypeScript strict
Install
npm install @alaarab/ogrid-react-fluentPeer Dependencies
@fluentui/react-components ^9.0.0
@fluentui/react-icons ^2.0.0
react ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom ^17.0.0 || ^18.0.0 || ^19.0.0Quick Start
import { OGrid, type IColumnDef } from '@alaarab/ogrid-react-fluent';
const columns: IColumnDef<Employee>[] = [
{ columnId: 'name', name: 'Name', sortable: true, editable: true },
{ columnId: 'department', name: 'Department',
filterable: { type: 'multiSelect' },
cellEditor: 'richSelect', cellEditorParams: { values: ['Engineering', 'Sales', 'Marketing'] } },
{ columnId: 'salary', name: 'Salary', type: 'numeric', editable: true,
valueFormatter: (v) => `$${Number(v).toLocaleString()}` },
];
<OGrid
columns={columns}
data={employees}
getRowId={(e) => e.id}
editable
cellSelection
statusBar
sideBar
/>Documentation
Full docs, API reference, and interactive examples at alaarab.github.io/ogrid.
License
MIT — Free forever. No enterprise tiers. No feature paywalls.
