Navigate: Home | Portfolio | Resume | Open Source | Publications | Arcade | Contact | More ]
nyc-geo-toolkit preview
Stablev0.2.0Apr 8, 2026

nyc-geo-toolkit

nyc-geo-toolkit · Python

Reusable NYC geography resources, normalization helpers, and boundary loaders for Python tools.

pip install nyc-geo-toolkit
PythonGeoJSONGeospatialBoundary DataDataFramesCivic TechOpen Data

What It Is

nyc-geo-toolkit is the shared geography foundation for NYC civic-data Python packages. It ships canonical boundary layers, a typed API for discovery, normalization, loading, and spatial helpers so downstream tools never duplicate boundary assets or geography logic.

What Ships in 0.2

  • Boundary layers for boroughs, community districts, council districts, NTAs, ZCTAs, and census tracts
  • Discovery & loading: list_boundary_layers(), list_boundary_values(), load_nyc_boundaries(), plus tract/council/NTA shortcuts with optional GeoDataFrame output
  • Normalization: canonical name and geography-value normalization across all layers
  • Geodesy helpers: haversine_distance_meters(), walk_radius_meters(), and build_circle_polygon() for catchment and proximity analysis
  • Spatial helpers: Web Mercator reprojection, OSM basemap tile overlays, bbox clipping for typed collections
  • Typed models: BoundaryCollection, BoundaryFeature, BoundaryLayerSpec, and constants like SUPPORTED_BOROUGHS
  • Exports: GeoJSON, optional pandas DataFrame helpers, and conversion utilities

Install extras: pip install "nyc-geo-toolkit[dataframes]", [spatial], or [all] for the full optional stack.

Three self-contained examples ship under examples/: about-the-data (full boundary-layer visualization), boundary-quickstart, and normalization-demo.

Ecosystem Fit

nyc-geo-toolkit is the shared geography core for this NYC package line. It powers nyc311.geographies, study-area selection in subway-access, and any other consumer that needs consistent NYC boundary loading and normalization.

═══════════════════════════════════════

Best viewed in Netscape Navigator 4.0at 800×600

© 2026 Blaise Albis-Burdige  |  hello@blaiseab.com

Top of Page ]