**fin-hypergrid** is an ultra-fast HTML5 grid presentation layer, achieving its speed by rendering (in a canvas tag) only the currently visible portion of your (virtual) grid, thus avoiding the latency and life-cycle issues of building, walking, and maintaining a complex DOM structure. Please be sure to checkout our [design overview](OVERVIEW.md) Below is an example custom application built on top of the Hypergrid API tooling. It also highlights a DOM-based custom external editor triggered via hypergrid events as well as interaction with Hypergrid’s column ordering API. ## Table of Contents * [Current Release](#current-release-302---25-September-2018) * [Distribution](#distribution) * [Demos](#demos) * [Features](#features) * [Testing](#testing) * [Documentation](#developer-documentation) * [Roadmap](#roadmap) * [Contributing](#contributors) ### Current Release (3.2.1 - 2 May 2019) > **CAUTION:** For those considering upgrading directly from v2, be advised Hypergrid v3 introduced a revised data model _with breaking changes._ The impact of these changes has been intentionally minimized and should not affect the vast majority of users. See the [v3.0.0 release notes](https://github.com/fin-hypergrid/core/releases/tag/v3.0.0) for more information. _For a complete list of changes, see the [release notes](https://github.com/fin-hypergrid/core/releases)._ ### Distribution #### npm module _(recommended)_ Published as a CommonJS module to npmjs.org. Specify a SEMVER of `"fin-hypergrid": "3.2.1"` (or `"^3.2.1"`) in your package.json file, issue the `npm install` command, and let your bundler (wepback, Browserify) create a single file containing both Hypergrid and your application. #### Build files _(for small and informal examples and proofs-of-concept)_ Also published as pre-bundled build files (`fin-hypergrid.js` and `fin-hypergrid.min.js`) to the GitHub CDN. See the [CDN index](https://fin-hypergrid.github.io#index) for links. Contains a JavaScript [IIFE](https://en.wikipedia.org/wiki/Immediately-invoked_function_expression) that creates (as needed) the global namespace `window.fin` and populates `window.fin.Hypergrid`. Your application would load one of these pre-bundled build files (in a `