honeycomb-grid
Create hexagon grids easily
243,317
707
| Install | |
|---|---|
npm install honeycomb-grid |
|
| Latest Version: | 4.1.5 |
| Vue: | 3 |
| License: | MIT |
| Last Updated: | Feb 19, 2026 |
| Links: | GitHub · npm |
Maintainer: flauwekeul
⬡ Honeycomb

A hexagon grid library made in JavaScriptTypeScript, heavily inspired by Red Blob Games' blog posts and code samples.
Honeycomb works in modern browsers and Node (>=16). It's recommended to use Honeycomb with TypeScript, but not required.
Installation
NPM:
npm i honeycomb-grid
Yarn:
yarn add honeycomb-grid
Or download the distribution from jsdelivr or unpkg.com.
Basic example
Create a rectangular grid of 10 by 10 hexes and log each hex:
import { defineHex, Grid, rectangle } from 'honeycomb-grid'
// 1. Create a hex class:
const Tile = defineHex({ dimensions: 30 })
// 2. Create a grid by passing the class and a "traverser" for a rectangular-shaped grid:
const grid = new Grid(Tile, rectangle({ width: 10, height: 10 }))
// 3. Iterate over the grid to log each hex:
grid.forEach(console.log)
Documentation
Documentation is available at abbekeultjes.nl/honeycomb. API docs can be found at abbekeultjes.nl/honeycomb/api/.
Backlog
These are ideas that may require further investigation 🕵️. Don't hesitate to open an issue or start a discussion.
- Directions should also be given in degrees (in steps of 30°)?
- Add functionality related to edges and/or corners. Use https://www.redblobgames.com/grids/parts/#hexagons.
- Add path finding (e.g. A*) functionality. Currently available as an example, see
/examples/a-star-path-finding/. - Clarify the "Line of sight" example (and rename to "Field of view"). Maybe add animations and some enemies as well?
- Add examples for (procedural) map generation (from a seed).
Related Packages
Version History
| Version | Released | Vue | License |
|---|---|---|---|
| 4.1.5 | 3.3.4 | MIT | |
| 4.1.4 | 3.3.4 | MIT | |
| 4.1.3 | 3.3.4 | MIT | |
| 4.1.2 | 3.3.4 | MIT | |
| 4.1.1 | 3.2.45 | MIT | |
| 4.1.0 | 3.2.45 | MIT | |
| 4.0.1 | 3.2.40 | MIT | |
| 4.0.0 | 3.2.37 | MIT | |
| 3.1.8 | MIT | ||
| 3.1.7 | MIT | ||
| 3.1.6 | MIT | ||
| 3.1.5 | MIT | ||
| 3.1.4 | MIT | ||
| 3.1.3 | MIT | ||
| 3.1.2 | MIT | ||
| 3.1.1 | MIT | ||
| 3.1.0 | MIT | ||
| 3.0.1 | MIT | ||
| 3.0.0 | MIT | ||
| 2.1.0 | MIT | ||
| 2.0.3 | MIT | ||
| 2.0.1 | MIT | ||
| 2.0.0 | MIT | ||
| 1.4.4 | MIT | ||
| 1.4.3 | MIT | ||
| 1.4.2 | MIT | ||
| 1.4.1 | MIT | ||
| 1.4.0 | MIT | ||
| 1.3.6 | MIT | ||
| 1.3.5 | MIT |
Showing the latest 30 of 60. See every release on npm
Pre-releases (15)
| Version | Released | Vue | License |
|---|---|---|---|
| 4.0.0-beta.8 | 3.2.37 | MIT | |
| 4.0.0-beta.7 | 3.2.37 | MIT | |
| 4.0.0-beta.6 | 3.2.37 | MIT | |
| 4.0.0-beta.5 | 3.2.37 | MIT | |
| 4.0.0-beta.4 | 3.2.37 | MIT | |
| 4.0.0-beta.3 | 3.2.37 | MIT | |
| 4.0.0-beta.2 | 3.2.37 | MIT | |
| 4.0.0-beta.1 | 3.2.37 | MIT | |
| 4.0.0-alpha.5 | MIT | ||
| 4.0.0-alpha.4 | MIT | ||
| 4.0.0-alpha.3 | MIT | ||
| 4.0.0-alpha.2 | MIT | ||
| 4.0.0-alpha.1 | MIT | ||
| 4.0.0-alpha.0 | MIT | ||
| 1.4.4-0 | MIT |