Hittekaart
Hittekaart is the part of fietsboek that is responsible for rendering heatmaps. It exists as a standalone project, which can be used easily in other projects.

Example for low zoom level

Example for high zoom level
Hittekaart produces OSM-compatible slippy map overlay tiles, so they can be put on top of any base layer.
Features
Reads GPX files
Supports
gzipandbrotlicompressed inputSupports writing tiles to an SQLite database
Multi-threading
CLI
The traditional way to use hittekaart is via the CLI bundled with it. This works well if you have tracks already in files that hittekaart supports, works with all programming languages, and allows you to focus on other details.
The CLI (as well as some general points regarding hittekaart and its output) is described in the README.
Rust
Hittekaart can be used as a Rust crate, see its documentation. Note that
the API is not well polished, as the use-case for hittekaart was to power
the CLI application. As such, some implementation details leak.
The benefit of using the Rust crate directly is that you have finer control over the data. For example, you can load tracks from different formats, or you can customize the saving of tiles.
Python
Hittekaart also comes with Python bindings for use in Python scripts, see its documentation.
Like the Rust crate, the Python bindings allow more fine-grained use of
hittekaart. You can, for example, provide tracks in-memory. However, not
all of the API has been properly wrapped. You cannot, for example, provide
custom storage functions.
Resources
Repository Rust crate Rust documentation Python documentation