Skip to main content

CLI to run the NDS MapViewer Docker container for visualizing map data (NDS.Live, GeoJSON, and more)

Project description

NDS MapViewer CLI

Visualize NDS.Live, NDS.Classic, and GeoJSON map data on a deck.gl-based map with live style editing, feature inspection, and layer management — all from a single mapviewer command. No container-runtime knowledge required.

Beta — This Python package is in early development. The CLI interface may change between releases. Feedback and bug reports are welcome via the NDS developer portal.

Full documentation: https://developer.nds.live/tools/mapviewer

Features

  • Map visualization powered by deck.gl via erdblick
  • Multiple data formats — NDS.Live, GeoJSON, NDS.Classic (member edition)
  • Live style editing — modify map styles in real time with YAML-based rules
  • Feature inspection — click any map feature to explore its attributes and relations
  • Local and remote data — view SmartLayer folders, FileStore files, or remote services
  • Guided setup — interactive wizard for creating data source configs
  • Config management — save, switch, and delete configs from the RunScreen (c)

Getting Started

The recommended way to set up your NDS.Live environment (credentials, container registry, pip index) is via ndslive-setup:

pip install ndslive-setup
ndslive-setup

This interactive wizard configures everything you need in one step, including installing nds-mapviewer.

Either Docker or Podman works as the container runtime — Podman is a free alternative if you cannot use Docker Desktop's commercial license.

Usage

mapviewer                         # HomeScreen (or auto-loads ~/.nds/config.yaml)

mapviewer /path/to/data.ndslive   # View a local FileStore
mapviewer /path/to/folder         # View a local SmartLayer folder
mapviewer /path/to/geojson/       # View a GeoJSON folder
mapviewer --demo                  # Try it with NDS Islands sample data

mapviewer mywork                  # Load a saved config by name
mapviewer /path/a.ndslive /path/b # Multiple sources at once

mapviewer --demo --debug          # Enable debug logging in the container
mapviewer --demo --env KEY=VALUE  # Set a custom container env var (repeatable)
mapviewer --demo --network host   # Run the container on the host network

All commands accept -e community|member and -i VERSION.

Container environment variables

--debug turns on verbose logging in the MapViewer container (shorthand for --env HTTP_LOG_LEVEL=debug). Use --env KEY=VALUE (repeatable, short form -E) to pass arbitrary environment variables into the container; explicit --env entries override --debug on key collision. The resulting -e flags appear in the Docker screen's "Copy Command" output.

Container network

--network NAME attaches the container to a specific network (e.g. a custom bridge or host). With --network host the container binds the host's port directly, so --port/--bind are ignored and the MapViewer is reached on its internal port (8089). Host networking behaves differently across platforms and runtimes — it is intended as a connectivity workaround.

If ~/.nds/config.yaml exists, mapviewer (with no arguments) loads it automatically and goes straight to the RunScreen.

If you edit ~/.nds/config.yaml manually, use host paths there, not container paths. The CLI translates them into the correct container mounts when it starts the container runtime.

The run screen shows, below the info banner, the source you passed (a config file or a directly-given data-source path such as a *.ndslive filestore) and the mapped config that was generated and mounted into the container.

Editions

Edition Formats Access
community NDS.Live, GeoJSON, open formats Free — nds.live
member + NDS.Classic NDS membership

Open-Source Building Blocks

  • mapget — tile-based map data server with caching
  • erdblick — deck.gl-based web frontend with live style editing and inspection tools

License

The MapViewer is a proprietary product of the NDS Association. License terms and conditions are governed by the account type used to access the Docker image — registering for a community or member account includes accepting the applicable licensing terms for the MapViewer and its components.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nds_mapviewer-2026.2.1.dev93.tar.gz (74.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nds_mapviewer-2026.2.1.dev93-py3-none-any.whl (58.5 kB view details)

Uploaded Python 3

File details

Details for the file nds_mapviewer-2026.2.1.dev93.tar.gz.

File metadata

  • Download URL: nds_mapviewer-2026.2.1.dev93.tar.gz
  • Upload date:
  • Size: 74.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nds_mapviewer-2026.2.1.dev93.tar.gz
Algorithm Hash digest
SHA256 3ca7a5ff67e6394eab8255e2de972481bc6d09f61881ba781a9825429c003108
MD5 3d82ff3950263859cc76f200896370b3
BLAKE2b-256 26b9c41ecacc5f6b2ab90c47397ed7d4550626f88de504b57702d9eafa3d050c

See more details on using hashes here.

Provenance

The following attestation bundles were made for nds_mapviewer-2026.2.1.dev93.tar.gz:

Publisher: mapviewer_py.yml on ndsev/mapviewer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nds_mapviewer-2026.2.1.dev93-py3-none-any.whl.

File metadata

File hashes

Hashes for nds_mapviewer-2026.2.1.dev93-py3-none-any.whl
Algorithm Hash digest
SHA256 c9902ff25b772df365babf8901df98c21959131a8c9f8167e73c0aa8b90af801
MD5 764148c58ed6f9bf32ec3917d41b9369
BLAKE2b-256 751a916ea8267ecae886e672d9b1783aaec49ed075cc46be97ed28f16e9a4284

See more details on using hashes here.

Provenance

The following attestation bundles were made for nds_mapviewer-2026.2.1.dev93-py3-none-any.whl:

Publisher: mapviewer_py.yml on ndsev/mapviewer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page