Skip to content

Repository dependencies ​

NOTE

This page is generated from the public repositories of the versatiles-org organisation. To correct or extend it, change scripts/dependency-graph.yaml or the repository it describes — edits made here are overwritten.

VersaTiles is not one program but a few dozen repositories that build on each other: a Rust core, npm packages, Docker images, tile-generation pipelines and the sites that serve the result. Those links are easy to lose track of, because they are written down in a different place every time — a package.json here, a FROM line there, a curl in a shell script somewhere else.

This page collects all of them in one place.

Overview ​

An arrow points from a repository to what it depends on, and the layout runs left to right: whatever is built on most ends up on the right, with everything that builds on it to the left. Line style says how the dependency is expressed; colour says how much the repository matters to someone using VersaTiles, from the core it cannot do without to the helpers only its maintainers touch.

A graph of the whole organisation is a lot at once, so it can be narrowed down — by one kind of dependency at a time, or to the repositories of a given category.

Dependencies
Repositories

Preparing the layout…

Showing 38 of 38 repositories and 73 of 73 dependencies. Arrows run left to right, from a repository to what it depends on. Scroll to zoom, drag the background to pan, hover a repository to isolate it.

Repositories ​

Core ​

What VersaTiles cannot do without — the container format, the software that reads and serves it, and the styles, fonts and frontend that turn tiles into a map.

RepositoryDescriptionDepends onUsed by
node-versatiles-containerNode.js library for reading VersaTiles container files.24
versatiles-fontsRepository of open-source SDF fonts optimized for MapLibre GL JS rendering.22
versatiles-frontendFrontend web applications for exploring VersaTiles maps and datasets.77
versatiles-glyphs-rsRust implementation of a signed-distance-field (SDF) glyph renderer used in map rendering.12
versatiles-rsCore Rust implementation of the VersaTiles toolkit for converting, validating, and serving map tiles in multiple formats.28
versatiles-specSpecification for VersaTiles containers.02
versatiles-styleToolkit for generating MapLibre styles.111

Tools ​

Optional extras built on top of the core — libraries, editors, renderers and alternative servers for developers who want more than a basemap.

RepositoryDescriptionDepends onUsed by
maplibre-versatiles-stylerMapLibre GL JS plugin for editing and managing VersaTiles map styles directly in the browser.21
node-versatiles-google-cloudGoogle Cloud integration tools for hosting and serving VersaTiles data.30
node-versatiles-serverNode.js implementation of a VersaTiles tile server.40
node-versatiles-svelteSvelte components and bindings for displaying VersaTiles data in MapLibre GL JS.22
photon-stack—03
versatiles-choroModular Docker-based pipeline for creating interactive choropleth maps30
versatiles-map-animationBrowser-based editor for composing keyframe camera animations on a VersaTiles map.10
versatiles-map-editor—30
versatiles-studioCross-platform desktop application for opening, inspecting, styling and converting map tiles.51
versatiles-svg-rendererrenders maps as SVG21

Tile production ​

Pipelines that turn open data into the tilesets VersaTiles publishes. Needed only to build tiles rather than download them.

RepositoryDescriptionDepends onUsed by
elevation—10
landcover-vectorsGenerate landcover vector tiles from ESA Worldcover10
opendem-gebco-bathymetryVersatiles Container from GEBCO Bathymetry Data provided by OpenDEM10
orthophotosProcessing pipeline and hosting setup for global and regional orthophoto layers.30
planetilerFlexible tool to build planet-scale vector tilesets from OpenStreetMap data fast02
planetiler-shortbreadNative Java Planetiler profile generating vector tiles in the Shortbread schema10
shortbread-tilemakerTilemaker configuration for generating Shortbread vector tiles.01

Ecosystem ​

What surrounds the software — documentation, the websites, the public tile and download servers, and the packages it is installed from.

RepositoryDescriptionDepends onUsed by
.githubShared GitHub workflows, templates, and issue configurations for all VersaTiles repositories.00
consortium—00
download.versatiles.orgData download hub for VersaTiles datasets.30
editorModified Maputnik for Versatiles Styles00
homebrew-versatilesHomebrew tap for installing VersaTiles CLI tools on macOS.33
maputnikAn open source visual editor for the 'MapLibre Style Specification'00
playgroundInteractive playground demonstrating how to use VersaTiles in web applications.21
shortbread-docsDocumentation of the Shortbread vector tile schema00
tiles.versatiles.orgTile hosting service for public VersaTiles datasets.20
toolsUtility scripts and helper tools built around the VersaTiles ecosystem.51
versatiles-dockerDocker images and build scripts for the VersaTiles ecosystem.44
versatiles-documentationDocumentation for the VersaTiles ecosystem.10
versatiles-org.github.ioSource code for the public website at versatiles.org.31

Internal helpers ​

Housekeeping for the maintainers. Nothing here is needed to use VersaTiles.

RepositoryDescriptionDepends onUsed by
node-release-toolHelper tool for automating Node.js package releases across VersaTiles repositories.013

A dependency can be written down in half a dozen different ways, each one found in a different kind of file. Every arrow in the graph above comes from one of the lines listed below, and can be followed back to it.

npm packages ​

The repository lists a @versatiles/… package among its npm dependencies.

Where these 32 links come from
FromToFoundSource
download.versatiles.orgnode-release-tool@versatiles/release-tool@^2.20.0package.json
download.versatiles.orgnode-versatiles-container@versatiles/container@^2.0.2package.json
download.versatiles.orgnode-versatiles-svelte@versatiles/svelte@^3.0.0package.json
maplibre-versatiles-stylernode-release-tool@versatiles/release-tool@^2.20.0package.json
maplibre-versatiles-stylerversatiles-style@versatiles/style@^6.4.0package.json
node-versatiles-containernode-release-tool@versatiles/release-tool@^2.20.0package.json
node-versatiles-google-cloudnode-release-tool@versatiles/release-tool@^2.20.0package.json
node-versatiles-google-cloudnode-versatiles-container@versatiles/container@^2.0.2package.json
node-versatiles-google-cloudversatiles-style@versatiles/style@^6.4.0package.json
node-versatiles-servernode-release-tool@versatiles/release-tool@^2.20.0package.json
node-versatiles-servernode-versatiles-container@versatiles/container@^2.0.2package.json
node-versatiles-serverversatiles-style@versatiles/style@^6.4.0package.json
node-versatiles-sveltenode-release-tool@versatiles/release-tool@^2.20.0package.json
node-versatiles-svelteversatiles-style@versatiles/style@^6.4.0package.json
orthophotosnode-release-tool@versatiles/release-tool@^2.9.1package.json
toolsnode-release-tool@versatiles/release-tool@^2.20.0package.json
toolsnode-versatiles-container@versatiles/container@^2.0.1package.json
toolsnode-versatiles-svelte@versatiles/svelte@^2.3.2package.json
versatiles-choroversatiles-rs@versatiles/versatiles-rs@^4.15.0package.json
versatiles-choroversatiles-style@versatiles/style@^6.1.1package.json
versatiles-frontendmaplibre-versatiles-stylermaplibre-versatiles-styler@^2.4.0package.json
versatiles-frontendnode-release-tool@versatiles/release-tool@^2.20.0package.json
versatiles-frontendversatiles-style@versatiles/style@^6.4.0package.json
versatiles-frontendversatiles-svg-renderer@versatiles/maplibre-svg-export@^2.3.0package.json
versatiles-map-animationversatiles-style@versatiles/style@^6.1.1package.json
versatiles-map-editornode-release-tool@versatiles/release-tool@^2.20.0package.json
versatiles-map-editorversatiles-style@versatiles/style@^6.4.0package.json
versatiles-org.github.ionode-release-tool@versatiles/release-tool@^2.20.0package.json
versatiles-studioversatiles-style@versatiles/style@^5.13.1package.json
versatiles-stylenode-release-tool@versatiles/release-tool@^2.20.0package.json
versatiles-svg-renderernode-release-tool@versatiles/release-tool@^2.20.0package.json
versatiles-svg-rendererversatiles-style@versatiles/style@^6.4.0package.json

Rust crates ​

The repository depends on one of the project’s crates in Cargo.toml.

Where these 5 links come from
FromToFoundSource
versatiles-studioversatiles-rsversatilesCargo.toml
versatiles-studioversatiles-rsversatiles_containerCargo.toml
versatiles-studioversatiles-rsversatiles_coreCargo.toml
versatiles-studioversatiles-rsversatiles_geometryCargo.toml
versatiles-studioversatiles-rsversatiles_pipelineCargo.toml

Docker images ​

A Dockerfile builds on an image produced by another repository.

Where these 2 links come from
FromToFoundSource
orthophotosversatiles-dockerghcr.io/versatiles-org/versatiles-gdalDockerfile
versatiles-choroversatiles-dockerversatiles/versatiles-tippecanoedocker/Dockerfile

Downloaded artifacts ​

Build scripts or runtime code fetch release assets or raw files from another repository.

Where these 30 links come from
FromToFoundSource
homebrew-versatilesversatiles-glyphs-rs"versatiles-org/versatiles-glyphs-rs"bin/make_formula_glyphs.sh
homebrew-versatilesversatiles-rsgithub.com/versatiles-org/versatiles-rs/releasesbin/make_formula.sh
homebrew-versatilesversatiles-studio"versatiles-org/versatiles-studio"bin/make_cask.sh
node-versatiles-containerversatiles-specgithub.com/versatiles-org/versatiles-spec/blobsrc/index.ts
node-versatiles-containerversatiles-specgithub.com/versatiles-org/versatiles-spec/blobsrc/lib/interfaces.ts
node-versatiles-serverversatiles-frontendgithub.com/versatiles-org/versatiles-frontend/releasesscripts/update-frontend.sh
orthophotosversatiles-frontendgithub.com/versatiles-org/versatiles-frontend/releasessrc/server/frontend.ts
tiles.versatiles.orgversatiles-frontendgithub.com/versatiles-org/versatiles-frontend/releasesbin/frontend/update.sh
tiles.versatiles.orgversatiles-stylegithub.com/versatiles-org/versatiles-style/releasesbin/styles/update.sh
toolsversatiles-frontendgithub.com/versatiles-org/versatiles-frontend/releasessrc/routes/setup_server/generate_code.ts
toolsversatiles-rsgithub.com/versatiles-org/versatiles-rs/releasessrc/routes/setup_server/generate_code.ts
versatiles-choroversatiles-rsgithub.com/versatiles-org/versatiles-rs.gitdocker/Dockerfile
versatiles-dockerplanetilergithub.com/versatiles-org/planetiler.gitversatiles-planetiler/Dockerfile
versatiles-dockershortbread-tilemakergit clone --depth 1 -q --branch versatiles https://github.com/versatiles-org/shortbread-tilemakerversatiles-tilemaker/Dockerfile
versatiles-dockerversatiles-frontend"versatiles-org/versatiles-frontend"versatiles-frontend/build.sh
versatiles-dockerversatiles-frontendgithub.com/versatiles-org/versatiles-frontend/releasesversatiles-frontend/Dockerfile
versatiles-dockerversatiles-frontendgithub.com/versatiles-org/versatiles-frontend/releasesversatiles-nginx/scripts/fetch_frontend.sh
versatiles-dockerversatiles-rs"versatiles-org/versatiles-rs"scripts/utils.sh
versatiles-dockerversatiles-rsgithub.com/versatiles-org/versatiles-rs.gitversatiles-gdal/Dockerfile
versatiles-dockerversatiles-rsgithub.com/versatiles-org/versatiles-rs/releasesscripts/download_versatiles_binary.sh
versatiles-documentationversatiles-spec'versatiles-org/versatiles-spec'scripts/sync-spec.ts
versatiles-fontsversatiles-glyphs-rsgithub.com/versatiles-org/versatiles-glyphs-rs/raw.github/workflows/ci.yml
versatiles-fontsversatiles-glyphs-rsgithub.com/versatiles-org/versatiles-glyphs-rs/raw.github/workflows/release.yml
versatiles-fontsversatiles-glyphs-rsgithub.com/versatiles-org/versatiles-glyphs-rs/rawscripts/build.ts
versatiles-fontsversatiles-glyphs-rsgithub.com/versatiles-org/versatiles-glyphs-rs/rawscripts/glyphs.ts
versatiles-frontendversatiles-fontsgithub.com/versatiles-org/versatiles-fonts/releasessrc/config/index.ts
versatiles-frontendversatiles-stylegithub.com/versatiles-org/versatiles-style/releasessrc/config/index.ts
versatiles-studioversatiles-fonts'versatiles-org/versatiles-fonts'scripts/update-assets.ts
versatiles-studioversatiles-frontend'versatiles-org/versatiles-frontend'scripts/update-assets.ts
versatiles-studioversatiles-style'versatiles-org/versatiles-style'scripts/update-assets.ts

CI and release automation ​

A GitHub Actions workflow uses an action, reusable workflow or dispatch of another repository.

Where these 9 links come from
FromToFoundSource
planetiler-shortbreadplanetilerversatiles-org/planetiler.github/workflows/ci.yml
versatiles-fontsversatiles-frontendgh workflow run --repo versatiles-org/versatiles-frontend.github/workflows/release.yml
versatiles-frontendversatiles-dockerapi.github.com/repos/versatiles-org/versatiles-docker/actions/workflows/release.yml/dispatches.github/workflows/release.yml
versatiles-glyphs-rshomebrew-versatilesgh workflow run --repo versatiles-org/homebrew-versatiles.github/workflows/release.yml
versatiles-org.github.ioplaygroundgh workflow run --repo versatiles-org/playground.github/workflows/gh-release.yml
versatiles-org.github.iotoolsgh workflow run --repo versatiles-org/tools.github/workflows/gh-release.yml
versatiles-rshomebrew-versatilesgh workflow run --repo versatiles-org/homebrew-versatiles.github/workflows/release.yml
versatiles-rsversatiles-dockergh workflow run --repo versatiles-org/versatiles-docker.github/workflows/release.yml
versatiles-studiohomebrew-versatilesgh workflow run --repo versatiles-org/homebrew-versatiles.github/workflows/release.yml

Declared by hand ​

A dependency no parser can see — recorded in scripts/dependency-graph.yaml with a note.

Where these 7 links come from
FromToFoundSource
elevationversatiles-rsruns the versatiles CLI to convert and merge the elevation tilesscripts/dependency-graph.yaml
landcover-vectorsversatiles-rsruns the versatiles CLI to assemble and merge the landcover tilesscripts/dependency-graph.yaml
opendem-gebco-bathymetryversatiles-rsruns the versatiles CLI to pack the bathymetry tiles into a containerscripts/dependency-graph.yaml
playgroundphoton-stackthe geocoder example queries geocode.versatiles.org, which this stack servesscripts/dependency-graph.yaml
playgroundversatiles-org.github.iobuilds every example page from the template at versatiles.org/playground.htmlscripts/dependency-graph.yaml
versatiles-frontendphoton-stackthe search box queries geocode.versatiles.org, which this stack servesscripts/dependency-graph.yaml
versatiles-map-editorphoton-stackthe place search queries geocode.versatiles.org, which this stack servesscripts/dependency-graph.yaml

How this page is made ​

scripts/build-dependency-graph.ts reads the public repositories of the organisation and looks for dependencies in the places they are actually declared: package.json, Cargo.toml, Dockerfiles, GitHub Actions workflows, and build or install scripts that fetch release assets. Markdown is deliberately not searched — README badges and prose links mention half the organisation and say nothing about what a build needs.

Every arrow therefore has a file and a line behind it, listed in the tables above and available as machine-readable data in dependency-graph.json, published alongside this page as /dependency-graph.json. What no parser can see — operational dependencies, for instance — is declared by hand in scripts/dependency-graph.yaml, which is also where false positives are filtered out and repositories are assigned to the categories above.

The following repositories are left out:

Private repositories are not included, and neither are dependencies on software outside the organisation.

Released under Unlicense