Inspects, validates, optimizes, and distributes GeoParquet files using gpio CLI for best practices and DuckDB for advanced SQL transforms.
How this skill is triggered — by the user, by Claude, or both
Slash command
/geoparquet-validation:geoparquet-validationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Guide users through GeoParquet workflows with a `gpio`-first approach: inspect, validate, optimize, and distribute GeoParquet files following current best practices.
Guide users through GeoParquet workflows with a gpio-first approach: inspect, validate, optimize, and distribute GeoParquet files following current best practices.
Use this skill when the user is working with GeoParquet files and needs:
gpioThis is not a general "anything about GeoParquet" skill. It is centered on the gpio toolchain.
Always prefer gpio for GeoParquet operations. It applies important best practices by default.
Installation:
pipx install --pre geoparquet-io
pip install --pre geoparquet-io
uv pip install --pre geoparquet-io
If gpio is missing, guide the user through installation before proceeding.
Use DuckDB for complex SQL, joins, aggregations, or geometry operations.
pip install "duckdb>=1.5"
When using DuckDB, apply GeoParquet best practices manually:
ORDER BY ST_Hilbert(geometry)COMPRESSION ZSTD with COMPRESSION_LEVEL 15ROW_GROUP_SIZE 100000gpio check allgpio inspect <file>
gpio inspect stats <file>
Report row count, geometry type, CRS, columns, and file size.
gpio convert geoparquet <input> <output>
gpio convert geoparquet <input> <output> --compression-level 15
gpio check all <file>
gpio check all <file> --fix --output <fixed>
gpio publish stac <input> <output.json>
gpio publish upload <file> s3://bucket/path/
# Inspect
gpio inspect <file>
gpio inspect stats <file>
# Convert
gpio convert geoparquet <input> <output>
gpio convert geoparquet <input> <output> --compression-level 15
# Validate
gpio check all <file>
gpio check all <file> --fix --output <fixed>
# Extract
gpio extract <input> <output> --bbox "minx,miny,maxx,maxy"
gpio extract <input> <output> --where "column > value"
# Partition and publish
gpio partition kdtree <input> <output_dir> --max-rows-per-file 500000
gpio publish stac <input> <output.json>
references/gpio-commands.mdreferences/distribution-best-practices.mdreferences/tool-comparison.mdnpx claudepluginhub isaaccorley/geospatial-skills --plugin geoparquet-validationPerforms geospatial vector analysis with GeoPandas: reads/writes Shapefile, GeoJSON, GeoPackage, Parquet, PostGIS; spatial joins, overlays, dissolve, clipping; CRS transforms, buffers, choropleth/interactive maps.
Extends pandas with spatial operations on vector geographic data. Use for reading/writing shapefiles, GeoJSON, GeoPackage, PostGIS; performing geometric operations, spatial joins, coordinate transformations, and choropleth mapping.
Converts data files between formats like CSV, Parquet, JSON, Excel, GeoJSON using DuckDB. Supports remote inputs and binary outputs Claude cannot generate natively.