Installation
Install Handsontable through your preferred package manager, and control your grid through the HotTable component’s props.
Install Handsontable
To install Handsontable locally using a package manager, run one of these commands:
npm install handsontable @handsontable/react-wrapperyarn add handsontable @handsontable/react-wrapperpnpm add handsontable @handsontable/react-wrapperInstall Skills for Claude Code
Skills for Claude Code give Claude AI deep knowledge of Handsontable’s APIs, so it can build, configure, and debug your grid accurately. We recommend installing them alongside Handsontable.
In Claude Code, run:
/plugin marketplace add handsontable/handsontable-skills/plugin install handsontable-skills@handsontable-skillsFor more details, see Skills for Claude Code.
Register Handsontable’s modules
Import and register all of Handsontable’s modules with a single function call:
import Handsontable from 'handsontable/base';import { registerAllModules } from 'handsontable/registry';
registerAllModules();Or, to reduce the size of your JavaScript bundle, import only the modules that you need.
Use the HotTable component
The main Handsontable component is called HotTable.
import { HotTable } from '@handsontable/react-wrapper';To set Handsontable’s configuration options, use HotTable’s props. For example:
<HotTable data={[ ['', 'Tesla', 'Volvo', 'Toyota', 'Ford'], ['2019', 10, 11, 12, 13], ['2020', 20, 11, 14, 13], ['2021', 30, 15, 12, 13] ]} rowHeaders={true} colHeaders={true} height="auto" autoWrapRow={true} autoWrapCol={true} licenseKey="non-commercial-and-evaluation" // for non-commercial use only/>Preview the result
import { HotTable } from '@handsontable/react-wrapper';import { registerAllModules } from 'handsontable/registry';
// register Handsontable's modulesregisterAllModules();
const ExampleComponent = () => { return ( <HotTable data={[ ['', 'Tesla', 'Volvo', 'Toyota', 'Ford'], ['2019', 10, 11, 12, 13], ['2020', 20, 11, 14, 13], ['2021', 30, 15, 12, 13], ]} rowHeaders={true} colHeaders={true} height="auto" autoWrapRow={true} autoWrapCol={true} licenseKey="non-commercial-and-evaluation" // for non-commercial use only /> );};
export default ExampleComponent;import { FC } from 'react';import { HotTable, HotTableProps } from '@handsontable/react-wrapper';import Handsontable from 'handsontable/base';import { registerAllModules } from 'handsontable/registry';
// register Handsontable's modulesregisterAllModules();
const ExampleComponent: FC = () => { return ( <HotTable data={[ ['', 'Tesla', 'Volvo', 'Toyota', 'Ford'], ['2019', 10, 11, 12, 13], ['2020', 20, 11, 14, 13], ['2021', 30, 15, 12, 13], ]} rowHeaders={true} colHeaders={true} height="auto" autoWrapRow={true} autoWrapCol={true} licenseKey="non-commercial-and-evaluation" // for non-commercial use only /> );};
export default ExampleComponent;Result
Handsontable is installed and ready to use in your project. Import it and create your first grid instance.
Related articles
Related guides
Configuration options
Hooks