CURATED LEARNING PATHS

Quick Start Guide

Each path connects the smallest useful set of guides, so you can learn a workflow without reading the entire catalog first.

01

Getting Started

Install, render, and understand the essential grid model.

3 guides
01.01

Getting Started

Install BeautifulGrid in a React project, connect its styles, data, columns, and page container, and render your first grid.

installationstyle-importfirst-gridresponsive-container
01.02Live demo

Basic DataGrid

Learn basic column configuration, custom cell rendering with itemRender, frozen columns, alignment, and row click handling through a practical example.

columnsitemRenderfrozen-columnsonClick+1
02

Data & Columns

Shape data, columns, grouping, and presentation rules.

8 guides
02.01Live demo

Data and Columns

Explore type-safe column mapping with TypeScript generics, nested key paths, and the rules for column width and alignment.

columnsnested-keystypescriptdata-types+1
02.02Live demo

Pagination

Place page-number navigation in the DataGrid footer and connect it to a server-side pagination API.

paginationpageserver-side-pagingpageSize+2
02.04Live demo

Line Numbers

Display sequential row numbers in the frozen area on the left and keep them aligned with virtual scrolling.

showLineNumberfrozenindexing
02.05Live demo

Sorting

Learn single-column and multi-column sorting rules and how to manage sorting as controlled state.

sortingmulti-sortsortInfoasc-desc+1
02.07Live demo

Large-Data Virtual Scroll

Understand how virtual scrolling renders rows around the current viewport and the constraints to consider when applying it to large datasets.

virtual-scrollinglarge-datasetperformancedom-recycling+2
02.08Live demo

Variable Row Height

Use getRowHeight to assign data-driven row heights while preserving virtual-scroll performance.

getRowHeightvariable-row-heightvirtual-scrollingperformance+1
03

Interaction & Editing

Build selection, navigation, editing, and user workflows.

16 guides
03.01Live demo

Cell Editing

Learn the core cell-editing flow, from declaring editable cells and entering by pointer or keyboard to IME input, save, cancel, and movement.

cell-editingeditableeditTriggerkeyboard+2
03.02Live demo

Built-in Editors

Configure the built-in text and checkbox editors and the provided Select and Date plugins, including header controls, value conversion, and editor icons.

text-editorcheckbox-editorcheckbox-headerselect-editor+3
03.03Live demo

Editor Icons

Display dropdown, calendar, and search icons beside cell values and connect them to editor activation or an independent callback.

editorIconvisibilityicon-callbackaccessibility
03.04Live demo

Autocomplete and Lookup

Combine autocomplete input and a lookup-modal icon in one cell, then commit values to multiple columns atomically.

autocompletelookupeditorIconmulti-cell-commit
03.05Live demo

Editing Events and Transactions

Understand the editing event flow from an editor request through onChangeValue validation and normalization, multi-column commits, and onChangeData notifications.

onChangeValuecommitonChangeDatatransaction+1
03.06Live demo

Merged Cell Editing

Learn how editing works for merged cells in normal layouts and across frozen row and column boundaries, including atomic updates to every underlying row.

cell-mergeeditingvirtual-scrollfrozen-row+2
03.07Live demo

Cell Navigation

Control the active cell, navigate with Arrow keys, Tab, Home/End, and PageUp/PageDown, and connect navigation to selection and inline editing.

cellNavigationOptionsactiveCellkeyboard-navigationcell-selection+1
03.10Live demo

Column Reorder

Learn how to rearrange column headers with drag and drop and persist the resulting order.

columnSortabledrag-and-dropreorderuser-customization
03.11Live demo

Column Visibility

Hide columns from the header toolbox, restore them from another column menu, or show every hidden column at once.

columnVisibilityhideablecontrolled-stateuser-customization
03.12Live demo

Row Reorder

Move rows by pointer or keyboard from the handle on the left and safely persist the order with virtual scrolling, selection, and merged cells.

reorderdrag-handleonReorderpointer-drag+2
03.13Live demo

Grid Search

Search cells across the currently loaded visible data and configure highlighting, previous and next navigation, context-menu entry points, and a controlled search UI.

searchcontext-menukeyboardvirtual-scroll+2
03.14Live demo

Cell Context Menu

Configure dynamic items, icons, separators, disabled states, and action callbacks for pointer and keyboard context menus on body cells.

context-menukeyboardaccessibilitydataControl
03.16Live demo

Disabled State

Lock DataGrid UI interactions such as click, selection, editing, sorting, filtering, context menus, and pagination while work is in progress.

disabledreadonlyeditingrowChecked+2
04

Advanced Features

Handle scale, summaries, pivoting, and complex layouts.

7 guides
04.01Live demo

Cell Merge

Learn how to visually merge identical values in adjacent rows to create readable, grouped report tables.

cellMergeOptionsmergeByrowspanreporting+1
04.02Live demo

Summary Row

Use the BGridProps summary configuration to display custom summary cells above or below the data rows.

summaryBGridSummaryColumnitemRendercolSpan
04.03Live demo

Pivot Table

Configure row axes, column axes, and aggregate values with BGridPivotOptions to display a cross-tab result.

pivotrowscolumnsvalues+1
04.04Live demo

Column Groups

Create group headers with three or more levels from a tree of column IDs, and use them safely across frozen-column boundaries.

columnGroupsBGridColumnGroupNodenested-headerfrozenColumnIndex+1
04.05Live demo

Frozen Rows & Columns

Learn how to freeze important rows at the top and columns on the left, including use with a Summary Row.

frozenColumnIndexfrozenRowCountfrozen-columnsfrozen-rows+2
04.06Live demo

Tree Folding

Render flat parent-key data as a hierarchy and safely expand or collapse rows.

treefoldingparent-row-keyvirtual-scroll+1
04.07Live demo

Master-Detail

Expand grid rows to reveal nested subgrids, forms, or detail panels spanning the full width with complete event isolation.

master-detailnested-gridexpandable-rowsvirtual-scroll+1
05

Styling & Accessibility

Finish the experience with themes and accessible behavior.

6 guides
05.01Live demo

Loading & Empty State

Show a spinner overlay while data loads and customize the message displayed when no rows or search results are available.

loadingspinningmsgempty-state+1
05.02Live demo

Row Styling

Dynamically assign custom CSS classes to rows that meet business conditions such as canceled payments, low inventory, or VIP membership.

getRowClassNameconditional-stylingrow-colorhighlight+1
05.05

Accessibility & Keyboard

Review the keyboard shortcuts currently available for cell navigation, selection, editing, search, context menus, row selection, and row reordering.

accessibilitykeyboardcell-navigationrow-selection+5
05.06Live demo

Custom Scrollbar

Configure native browser scrollbars or OS-independent custom overlay scrollbars, including the available dock options.

scrollbarcustom-scrollbarnative-scrollbarscrollbar-dock+1