NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #2205 most downloaded on npm
An incredibly fast JavaScript library for Delaunay triangulation of 2D points
Last release 6 months ago
23 Mar 2026
Release timing varies
gaps range from 8 days to 2.8 years
Nearly every release is documented
notes for 18 of 20 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
20 releases · first in 2017
Added first-class TypeScript types that are maintained within the library. @types/delaunator is no longer necessary. #90
Added first-class TypeScript types that are maintained within the library. @types/delaunator is no longer necessary. #90
Slightly smaller bundle.
Slightly smaller bundle.
Make the library fully robust by switching to robust-predicates for orientation checks. Now the library will produce valid output even on highly degen
One column per quarter.
"type": "module", requiring Node v12+.Significantly improved robustness, fixing a few edge cases leading to a broken triangulation. #51
Significantly improved robustness, fixing a few edge cases leading to a broken triangulation. #51
Define tessellation of collinear input, returning an empty result with an ordered hull instead of throwing an error. Allows building Voronoi tessellat
update method for updating the triangulation after changing coords in place (useful for iterative relaxation algorithms). #48Improve performance further.
Improve performance further.
Improved performance further, and made the algorithm easier to port to compiled languages. #32
delaunay.hull is now just a typed array of indices to hull edges in order (instead of a linked list). This wasn't publicly documented, but have to release a major version anyway because d3-delaunay depended on it.Nothing published for this version
Minor robustness improvements.
Minor robustness improvements.
Improved numerical robustness.
Improved numerical robustness.
Improve performance on certain kinds of inputs. ~1.5x faster for grids, orders of magnitude faster for degenerate inputs like concentric circles.
🐞Fix a rare race condition that could produce corrupt halfedges structure. #25
halfedges structure. #25Accept plain (non-typed) arrays in Delaunator constructor.
Accept plain (non-typed) arrays in Delaunator constructor.
⚠️ breaking: Delaunator constructor now accepts a typed flat array of coordinates: `js const coords = new Float64Array(x0, y0, x1, y1, ...); const del
⚠️ breaking: Delaunator constructor now accepts a typed flat array of coordinates:
const coords = new Float64Array(x0, y0, x1, y1, ...);
const delaunay = new Delaunator()
For the old constructor behavior, use Delaunator.from:
const delaunay = Delaunator.from([[10, 10], [20, 20], ...]);
🍏 Delaunator can now be used as a ES module in environments that support them:
import Delaunator from 'delaunator';
Add browser builds and CDN links (thanks @mbostock)
Fixed an issue where halfedges structure would get invalid in rare cases. #11
Fixed an issue where halfedges structure would get invalid in rare cases. #11
Expose delaunay.halfedges array for traversing the triangulation.
delaunay.halfedges array for traversing the triangulation.~2x performance improvement! See #3
~2x performance improvement! See #3
delaunay.triangles now returns a Int32Array instead of Array.
delaunay.triangles now returns a Int32Array instead of Array.Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →