Heatmap.js while very popular has had a halt in its support for 7 years, and is effectively abandoned.
As a result, it's now broken in all modern browsers.
When cesiumjs-heat / heatmap.js are brought in as modules (this is true for most js framework builds using webpack, vite, etc) the code within modules are executing in strict mode
Canvas2d img.Data has been made immutable in strict mode, and fails when the outdated library tries to update.
Heatmap.js while very popular has had a halt in its support for 7 years, and is effectively abandoned. As a result, it's now broken in all modern browsers.
https://github.com/pa7/heatmap.js/issues/219 // Issue https://github.com/pa7/heatmap.js/pull/315 // PR never merged by owner
If you are interested in adoption, you might want to use one of the alts that are still getting updates
https://www.npmjs.com/package/keli-heatmap.js https://www.npmjs.com/package/heatmap.js-fixed
Breakdown of problem:
When cesiumjs-heat / heatmap.js are brought in as modules (this is true for most js framework builds using webpack, vite, etc) the code within modules are executing in strict mode
Canvas2d
img.Data has been made immutable in strict mode, and fails when the outdated library tries to update.Result:
Fatal error unable to draw heatmap to canvas.