UNPKG

5.99 kBMarkdownView Raw
1<div align="center">
2
3<a href="https://handsontable.com" rel="nofollow"><img src="https://raw.githubusercontent.com/handsontable/handsontable/develop/resources/handsontable-logo-blue.svg" alt="Handsontable" width="300"></a>
4
5Handsontable is a JavaScript component that combines data grid features with spreadsheet-like UX. <br>
6It provides data binding, data validation, filtering, sorting, and CRUD operations.
7
8[![npm](https://img.shields.io/npm/dt/handsontable.svg)](https://npmjs.com/package/handsontable)
9[![npm](https://img.shields.io/npm/dm/handsontable.svg)](https://npmjs.com/package/handsontable)
10[![CI status](https://github.com/handsontable/handsontable/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/handsontable/handsontable/actions/workflows/test.yml?query=branch%3Amaster)
11[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fhandsontable%2Fhandsontable.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Fhandsontable%2Fhandsontable?ref=badge_shield)
12[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=handsontable_handsontable&metric=alert_status)](https://sonarcloud.io/dashboard?id=handsontable_handsontable)
13
14---
15#### Get Started with Handsontable
16
17<table border="0">
18 <tr>
19 <td>
20 <img src="https://raw.githubusercontent.com/handsontable/handsontable/develop/resources/icons/react-icon.svg" width="14" height="14">
21 <a href="https://github.com/handsontable/handsontable/tree/master/wrappers/react"> <strong>React</strong></a>&nbsp;
22 </td>
23 <td>
24 <img src="https://raw.githubusercontent.com/handsontable/handsontable/develop/resources/icons/angular-icon.svg" width="14" height="14">
25 <a href="https://github.com/handsontable/handsontable/tree/master/wrappers/angular"> <strong>Angular</strong></a>&nbsp;
26 </td>
27 <td>
28 <img src="https://raw.githubusercontent.com/handsontable/handsontable/develop/resources/icons/vue-icon.svg" width="14" height="14">
29 <a href="https://github.com/handsontable/handsontable/tree/master/wrappers/vue"> <strong>Vue</strong></a>&nbsp;
30 </td>
31 <td>
32 <img src="https://raw.githubusercontent.com/handsontable/handsontable/develop/resources/icons/vue-icon.svg" width="14" height="14">
33 <a href="https://github.com/handsontable/handsontable/tree/master/wrappers/vue3"> <strong>Vue 3</strong></a>&nbsp;
34 </td>
35 <td>
36 <img src="https://raw.githubusercontent.com/handsontable/handsontable/develop/resources/icons/javascript-icon.svg" width="14" height="14">&nbsp;
37 <a href="#installation"> <strong>JavaScript</strong></a>&nbsp;
38 </td>
39 </tr>
40</table>
41
42---
43
44<a href="https://handsontable.com/demo"><img src="https://raw.githubusercontent.com/handsontable/handsontable/develop/resources/handsontable-github-preview.png" alt="Handsontable data grid" width="805"/></a>
45
46</div>
47
48## Features
49
50The most popular features of Handsontable:
51
52&nbsp;&nbsp;✓&nbsp; Multiple column sorting <br>
53&nbsp;&nbsp;✓&nbsp; Non-contiguous selection <br>
54&nbsp;&nbsp;✓&nbsp; Filtering data <br>
55&nbsp;&nbsp;✓&nbsp; Export to file <br>
56&nbsp;&nbsp;✓&nbsp; Validating data <br>
57&nbsp;&nbsp;✓&nbsp; Conditional formatting <br>
58&nbsp;&nbsp;✓&nbsp; Merging cells <br>
59&nbsp;&nbsp;✓&nbsp; Freezing rows/columns <br>
60&nbsp;&nbsp;✓&nbsp; Moving rows/columns <br>
61&nbsp;&nbsp;✓&nbsp; Resizing rows/columns <br>
62&nbsp;&nbsp;✓&nbsp; Hiding rows/columns <br>
63&nbsp;&nbsp;✓&nbsp; Context menu <br>
64&nbsp;&nbsp;✓&nbsp; Comments <br>
65
66## Documentation
67
68- [Developer guides](https://handsontable.com/docs)
69- [API Reference](https://handsontable.com/docs/api/core/)
70- [Changelog](https://handsontable.com/docs/release-notes/)
71- [Demo](https://handsontable.com/demo)
72
73<div id="installation"></div>
74
75## Get Started
76### Install with npm
77
78Run the following command in your terminal
79```
80npm install handsontable
81```
82
83You can also use [Yarn](https://yarnpkg.com/package/handsontable), [NuGet](https://www.nuget.org/packages/Handsontable) or load the bundle directly from [jsDelivr](https://jsdelivr.com/package/npm/handsontable).
84
85### Create a placeholder
86
87Create an HTML placeholder
88
89```html
90<div id="example"></div>
91```
92
93Import Handsontable and its stylesheet
94```js
95import Handsontable from "handsontable";
96import 'handsontable/dist/handsontable.full.css';
97```
98
99### Initialize the grid
100
101Now turn your placeholder into a data grid with sample data.
102```js
103const data = [
104 ['', 'Tesla', 'Volvo', 'Toyota', 'Ford'],
105 ['2019', 10, 11, 12, 13],
106 ['2020', 20, 11, 14, 13],
107 ['2021', 30, 15, 12, 13]
108];
109
110const container = document.getElementById('example');
111const hot = new Handsontable(container, {
112 data: data,
113 rowHeaders: true,
114 colHeaders: true
115});
116```
117
118## Support
119
120We provide support for developers working with commercial version via [contact form](https://handsontable.com/contact?category=technical_support)</a> or at support@handsontable.com.
121
122If you use a non-commercial version then please ask your tagged question on [StackOverflow](https://stackoverflow.com/questions/tagged/handsontable).
123
124## License
125
126Handsontable is a commercial software with two licenses available:
127
128- Free for non-commercial purposes such as teaching, academic research, and evaluation. [Read it here](https://github.com/handsontable/handsontable/blob/master/handsontable-non-commercial-license.pdf).
129- Commercial license with support and maintenance included. See [pricing plans](https://handsontable.com/pricing).
130
131## License key
132
133If you use Handsontable in a project that supports your commercial activity, then you must purchase the license key at [handsontable.com](https://handsontable.com/pricing).
134
135If you use the free for non-commercial license of Handsontable, then pass the phrase `'non-commercial-and-evaluation'`, as described in [this documentation](https://handsontable.com/docs/license-key/).
136
137<br>
138<br>
139
140Proudly created and maintained by the [Handsontable Team](https://handsontable.com/team).