HyperFormula allows you to perform spreadsheet-like calculations in your web applications. It is written in TypeScript and supports all major JavaScript frameworks. You can use it in a browser or as a service with Node.js as your back-end technology.
The engine comes with a built-in, localized library of functions grouped into different categories, and covers most user-triggered actions such as CRUD operations, undo/redo, and clipboard operations. It also supports the use of cross-sheet references, named expressions, different data types, and custom functions.
- Explainer video / Blog post
- Demos
- Installation
- Basic usage
- API Reference
- Configuration options
- List of built-in functions
- Key concepts
- Contact
Install the library from npm:
npm install hyperformula
Once properly installed, you can use it like this:
import { HyperFormula } from 'hyperformula';
// define the options
const options = {
licenseKey: 'gpl-v3',
};
// define the data
const data = [['10', '20', '30', '=SUM(A1:C1)']];
// build an instance with defined options and data
const hfInstance = HyperFormula.buildFromArray(data, options);
// call getCellValue to get the calculation results
const mySum = hfInstance.getCellValue({ col: 3, row: 0, sheet: 0 });
// print the result in the browser's console
console.log(mySum);
HyperFormula doesn't assume any existing user interface, which makes it a great general-purpose library that can be used in various business applications. Here are some examples:
- Smart documents
- Educational apps
- Computation notebooks
- Data grid components
- Business logic builders
- Forms and form builders
- Spreadsheets
- Online calculators
- Low connectivity apps
Help us build the fastest and most flexible calculation engine for business web apps. Please read the Contributing Guide before making a pull request.
Your help is much appreciated in any of the following topics:
- Making pull requests
- Adding new functions
- Adding new features
- Improving the quality of the existing code
- Improving performance
- Improving documentation and public API
- Reporting bugs
- Suggesting improvements
- Suggesting new features
HyperFormula is available under the GPLv3 license.
If you need a commercial license or support and maintenance services, contact our Sales Team.
You should know that this project wouldn’t exist without co-financing from European Union funds under the European Regional Development Funds as a part of the Smart Growth Operational Programme. Project implemented as a part of the Polish National Centre for Research and Development: “Fast Track”.
- Name of the programme: Smart Growth Operational Programme 2014-2020
- Project name: “Development of the high-performance calculation engine for processing tabular data of the significant size on mobile devices and workstations using parallel computing and GPU.”
- Project number: POIR.01.01.01-00-0223/18-00
- Beneficiary: Handsoncode sp. z o.o.
- Total budget: PLN 1 117 275.87 (USD ~295 000)
- Amount of grant: PLN 771 807.73 (USD ~204 000)
- Duration: 2018-2019
Created by Handsontable, NavAlgo, and Contributors.
© 2021 Handsoncode