Gathering detailed insights and metrics for handsontable
Gathering detailed insights and metrics for handsontable
Gathering detailed insights and metrics for handsontable
Gathering detailed insights and metrics for handsontable
@handsontable/vue
Best Data Grid for Vue with Spreadsheet Look and Feel.
@handsontable/react
Best Data Grid for React with Spreadsheet Look and Feel.
@handsontable/formulajs
JavaScript implementation of most Microsoft Excel formula functions
@handsontable/vue3
Best Data Grid for Vue with Spreadsheet Look and Feel.
JavaScript Data Grid / Data Table with a Spreadsheet Look & Feel. Works with React, Angular, and Vue. Supported by the Handsontable team ⚡
npm install handsontable
Typescript
Module System
Node Version
NPM Version
97.2
Supply Chain
93.8
Quality
98.6
Maintenance
100
Vulnerability
86.1
License
JavaScript (93.28%)
TypeScript (5.05%)
SCSS (1.08%)
CSS (0.37%)
Vue (0.21%)
EJS (0.01%)
Total Downloads
29,262,133
Last Day
26,612
Last Week
139,397
Last Month
606,521
Last Year
5,445,371
NOASSERTION License
20,981 Stars
8,747 Commits
3,143 Forks
457 Watchers
159 Branches
133 Contributors
Updated on May 09, 2025
Minified
Minified + Gzipped
Latest Version
15.3.0
Package Id
handsontable@15.3.0
Unpacked Size
19.81 MB
Size
3.91 MB
File Count
1,544
NPM Version
10.8.3
Node Version
22.9.0
Published on
Apr 29, 2025
Cumulative downloads
Total Downloads
Last Day
78.8%
26,612
Compared to previous day
Last Week
6.5%
139,397
Compared to previous week
Last Month
9%
606,521
Compared to previous month
Last Year
-11%
5,445,371
Compared to previous year
5
58
1
Use it with JavaScript, TypeScript, or frameworks such as React, Angular, and Vue. With its spreadsheet-like editing features, it’s perfect for building data-rich internal apps. It allows users to enter, edit, validate, and process data from various sources. Common use cases include resource planning software (ERP), inventory management systems, digital platforms, and data modeling applications.
Website — Documentation — Themes — API — Community
✅ Built-in themes
✅ Flexible API
✅ Virtualization
✅ IME support
✅ Internationalization
✅ RTL support
✅ Accessibility
✅ Keyboard shortcuts
✅ Sorting data
✅ Filtering data
✅ 400 built-in formulas
✅ Configurable selection
✅ Data validation
✅ Conditional formatting
✅ Merged cells
✅ Frozen rows and columns
✅ Hiding rows and columns
✅ Right-click context menu
Below, you'll find the installation guide for the JavaScript component. If you're using a specific framework, refer to its dedicated wrapper for installation instructions:
You can also use Yarn, NuGet or load the package from CDN.
1npm install handsontable
1<!-- Set the container's ID and apply the desired theme --> 2<div id="handsontable-example" class="ht-theme-main-dark-auto"></div>
1import Handsontable from 'handsontable'; 2// Base CSS rules 3import 'handsontable/styles/handsontable.min.css'; 4// Main theme variables 5import 'handsontable/styles/ht-theme-main.min.css'; 6 7const element = document.getElementById('handsontable-grid'); 8 9new Handsontable(element, { 10 data: [ 11 { company: 'Tagcat', country: 'United Kingdom', rating: 4.4 }, 12 { company: 'Zoomzone', country: 'Japan', rating: 4.5 }, 13 { company: 'Meeveo', country: 'United States', rating: 4.6 }, 14 ], 15 columns: [ 16 { data: 'company', title: 'Company', width: 100 }, 17 { data: 'country', title: 'Country', width: 170, type: 'dropdown', source: ['United Kingdom', 'Japan', 'United States'] }, 18 { data: 'rating', title: 'Rating', width: 100, type: 'numeric' }, 19 ], 20 rowHeaders: true, 21 navigableHeaders: true, 22 tabNavigation: true, 23 multiColumnSorting: true, 24 headerClassName: 'htLeft', 25 licenseKey: 'non-commercial-and-evaluation', 26}); 27
1<!DOCTYPE html> 2<html lang="en"> 3 <head> 4 <meta charset="UTF-8" /> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 6 <title>Handsontable - JavaScript Data Grid Example</title> 7 <link 8 rel="stylesheet" 9 href="https://cdn.jsdelivr.net/npm/handsontable/styles/handsontable.min.css" 10 /> 11 <link 12 rel="stylesheet" 13 href="https://cdn.jsdelivr.net/npm/handsontable/styles/ht-theme-main.min.css" 14 /> 15 </head> 16 <body> 17 <div id="handsontable-grid" class="ht-theme-main-dark-auto"></div> 18 <script src="https://cdn.jsdelivr.net/npm/handsontable/dist/handsontable.full.min.js"></script> 19 <script> 20 const element = document.getElementById("handsontable-grid"); 21 22 new Handsontable(element, { 23 data: [ 24 { company: "Tagcat", country: "United Kingdom", rating: 4.4 }, 25 { company: "Zoomzone", country: "Japan", rating: 4.5 }, 26 { company: "Meeveo", country: "United States", rating: 4.6 }, 27 ], 28 columns: [ 29 { data: "company", title: "Company", width: 100 }, 30 { data: "country", title: "Country", width: 170, type: "dropdown", source: ["United Kingdom", "Japan", "United States"] }, 31 { data: "rating", title: "Rating", width: 100, type: "numeric" }, 32 ], 33 rowHeaders: true, 34 navigableHeaders: true, 35 tabNavigation: true, 36 multiColumnSorting: true, 37 headerClassName: "htLeft", 38 licenseKey: "non-commercial-and-evaluation", 39 }); 40 </script> 41 </body> 42</html>
Handsontable is a data grid component written in JavaScript, not a spreadsheet. However, it brings in many features typically found in spreadsheet software. We designed it this way because spreadsheet-like patterns are often the most user-friendly when it comes to data entry and management.
div
) or windowAt first glance, it might seem that a data table, spreadsheet, and data grid are just different names for the same thing - an interactive table displaying data. In reality, these tools serve different purposes and offer distinct functionalities, designed to meet specific needs. Handsontable sits comfortably in the data grid category while incorporating many of the best aspects of spreadsheet software.
We're here to help!
If you're using Handsontable with a free, non-commercial license, you can:
If you have a commercial license, feel free to contact us directly at support@handsontable.com or use our contact form.
Handsontable is available under two licensing options, allowing you to choose the one that best fits your needs. Each license comes with its own terms and conditions, as outlined below:
This license is available for non-commercial purposes such as teaching, academic research, or evaluation. It allows you to use Handsontable free of charge under the terms specified in the non-commercial license agreement.
Learn more here.
For commercial use, a paid license is required. This license includes support and maintenance to ensure you get the most out of Handsontable. The commercial license can be purchased directly from Handsoncode or through an authorized reseller. See the pricing page for details.
For projects covered by the free non-commercial license, simply use the phrase 'non-commercial-and-evaluation'
as your license key.
If you're using Handsontable in a project that supports commercial activities, you'll need to purchase a license key at handsontable.com/pricing. You can find more details in our documentation.
Contributions are welcome, but before you make them, please read the Contributing Guide and accept the Contributor License Agreement.
Created and maintained by the Handsontable Team 👋
© 2012 - 2025 Handsoncode
7.5/10
Summary
Inefficient Regular Expression Complexity in handsontable
Affected Versions
< 10.0.0
Patched Versions
10.0.0
Reason
30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Reason
no binaries found in the repo
Reason
packaging workflow detected
Details
Reason
SAST tool is run on all commits
Details
Reason
license file detected
Details
Reason
dependency not pinned by hash detected -- score normalized to 8
Details
Reason
Found 22/29 approved changesets -- score normalized to 7
Reason
badge detected: InProgress
Reason
dangerous workflow patterns detected
Details
Reason
detected GitHub workflow tokens with excessive permissions
Details
Reason
security policy file not detected
Details
Reason
project is not fuzzed
Details
Reason
72 existing vulnerabilities detected
Details
Score
Last Scanned on 2025-05-05
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More