Skip to content

KARTOZA ยท INFRASTRUCTURE MAPPER

A versioned spatial schema for site infrastructure

Capture in Postgres, snapshot to GeoPackage, sync from the field — one source of truth.

Infrastructure Mapper in action

What it is

Infrastructure Mapper is an opinionated PostgreSQL/PostGIS data model for capturing buildings, roads, water, electricity, fences, vegetation, monitoring, points of interest, land use, gates, poles, and culinary facilities — together with every condition, material, and reading observed against them over time.

Ship the schema as a Postgres database. Snapshot it as a GeoPackage. Take it to the field in QField or Mergin Maps. Migrate it forward with vX.Y.Z migrations. All from the same source of truth.

Download the latest release

Always-current direct links — no version pinning, no GitHub navigation:

Want just one domain? Every release also ships 13 per-domain SQL + GeoPackage slices (e.g. pg-schema-07-fencing-latest.sql, KartozaInfrastructureMapper-07-fencing-latest.gpkg) — see Getting Started for the per-domain download patterns, or GitHub Releases for the full asset list.

What's in the box

  • Every capture domain


    From sub-soil readings to gate hinge angles — everything you need to map a working site, modelled relationally with stable UUIDs across PG and GPKG.

    Explore the data model

  • Versioned schema lifecycle


    Immutable baseline plus paired PG and GPKG migration trails. Strict-sequential runners apply pending versions in semver order, each in its own transaction.

    Read the lifecycle

  • Field-ready GeoPackages


    The same schema, snapshot to a single file for QField or Mergin Maps. UUIDs and last_update timestamps make a clean sync path back to the source PG.

    Field workflow

  • One-tag releases


    Each vX.Y.Z tag publishes a fresh PG schema dump, GPKG, fixtures, and migration tarballs as GitHub Release artifacts.

    Release process

  • Reproducible Nix dev shell


    One flake provisions Postgres, PostGIS, QGIS, GDAL, sqlfluff, black, markdownlint, mkdocs — everything CI uses, ready locally with nix develop.

    The Nix flake

  • CI that knows the schema


    Pre-commit + GitHub Action enforce baseline immutability and the -- Issue-NNN: annotation convention. The schema cannot drift silently.

    CI & pre-commit

QA status

๐Ÿ“ƒ License Checks ๐Ÿ‹๐Ÿฝ PostGIS Load โœ๏ธ Markdown ๐Ÿ Python โš’๏ธ QA ๐Ÿ‘๏ธ Spelling ๐Ÿ‘จ๐Ÿฝ SQL ๐Ÿ”’ Schema Immutability ๐Ÿ—œ๏ธ YAML