Skip to main content

A CLI tool for managing cloud-native geospatial data

Project description

Portolan Logo

Portolan CLI

Cloud-native geospatial data catalogs, simplified


A CLI for publishing and managing cloud-native geospatial data catalogs. Portolan orchestrates format conversion (GeoParquet, COG), versioning, and sync to object storage—no running servers, just static files.

Why Portolan?

Benefit How
Scalable Cloud object storage that scales to petabytes
Open 100% open source, open formats (GeoParquet, COG, STAC, Iceberg)
AI-Ready STAC metadata enables semantic search and LLM integration
Cheap Pay only for storage + egress — no servers to run
Sovereign Host anywhere (AWS, GCS, Azure, MinIO, Cloudflare R2)
Breaks the GIS silo Query with DuckDB, Snowflake, BigQuery, Databricks, Pandas — not just GIS tools

What It Does

  • Convert vector/raster data to cloud-native formats (GeoParquet, COG)
  • Generate STAC catalogs with rich metadata, thumbnails, and MapLibre styles
  • Version datasets with checksums and history tracking
  • Sync to S3, GCS, Azure, or any S3-compatible storage

Quick Example

portolan init
portolan dataset add census.parquet --title "Census 2022" --auto
portolan remote add prod s3://my-bucket/catalog
portolan sync

Installation

Recommended: pipx (for global use)

pipx install portolan-cli

This installs portolan in an isolated environment while making the command globally available.

If you don't have pipx installed:

python3 -m pip install --user pipx
python3 -m pipx ensurepath

Alternative: pip

pip install portolan-cli

Note: This installs into your global or user site-packages and may conflict with other packages.

For Development

Use uv for local development:

git clone https://github.com/portolan-sdi/portolan-cli.git
cd portolan-cli
uv sync --all-extras
uv run portolan --help

See Contributing Guide for full development setup.

Documentation

License

Apache 2.0 — see LICENSE

Project details


Download files

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

Source Distribution

portolan_cli-0.1.3.tar.gz (329.2 kB view details)

Uploaded Source

Built Distribution

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

portolan_cli-0.1.3-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file portolan_cli-0.1.3.tar.gz.

File metadata

  • Download URL: portolan_cli-0.1.3.tar.gz
  • Upload date:
  • Size: 329.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for portolan_cli-0.1.3.tar.gz
Algorithm Hash digest
SHA256 20c917add623b8b9196696b5658b85dc58f9ca31ff83ab5b171b0ae5da5ed4ec
MD5 f3b248c2d234da2b2a3c421b1f6c2427
BLAKE2b-256 fc989d26dc95c5f4a9f160babc386ec3209a80532b8f378a325dd9f471f38db6

See more details on using hashes here.

Provenance

The following attestation bundles were made for portolan_cli-0.1.3.tar.gz:

Publisher: release.yml on portolan-sdi/portolan-cli

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

File details

Details for the file portolan_cli-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: portolan_cli-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for portolan_cli-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 18eb68806c9fd82b4f09f520fd114927e5ab72334ce9dd698fd1fa7ca5846d7f
MD5 27f8d6a6f28177a0dd6d2ffb6cf66b2b
BLAKE2b-256 cfb7c53b1d50e8fd8de5185a29287ef6c40ff95a693cc95e78448cae98db1ab5

See more details on using hashes here.

Provenance

The following attestation bundles were made for portolan_cli-0.1.3-py3-none-any.whl:

Publisher: release.yml on portolan-sdi/portolan-cli

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