Read/write geoparquet with the geojson-pydanic models.
Project description
# GeoParquet-Pydantic
Motivation: This project started at the 2024 San Fransisco GeoParquet Community hackathon, and arose out of a simple observation: why must Python users install the massive GDAL dependency (typically via GeoPandas) to do simple GeoJSON<>GeoParquet conversions.
Is this library the right choice for you?: * Do you need to use a wide variety of Geospatial functions? If so, you will likely have to add GDAL/GeoPandas as a dependency anyways, making this ibrary’s conversion functions probably redundant. * Is your workflow command line centric? If so you may want to consider Planet Lab’s simular CLI tool [gpq](https://github.com/planetlabs/gpq), which is written in Go and substantially faster. * Otherwise, if you are using Python and want to avoid unnecessary bulky dependencies, this library will be a great choice!
Note: All user-exposed functions and schema classes are available at the top level (i.e., geoparquet_pydantic.validate_geoparquet_table(…)) of this library.
# Documentation is on GitHub [here](https://github.com/xaviernogueira/geoparquet-pydantic/blob/main/README.md)
# Getting Started
Install from [PyPi](https://pypi.org/project/geoparquet-pydantic): `bash pip install geoparquet-pydantic `
Or from source: `bash $ git clone https://github.com/xaviernogueira/geoparquet-pydantic.git $ cd geoparquet-pydantic $ pip install . `
Then import with an underscore: `python import geoparquet_pydantic `
Or just import the functions/classes you need from the top-level: `python from geoparquet_pydantic import GeometryColumnMetadata from geoparquet_pydantic import GeoParquetMetadata from geoparquet_pydantic import validate_geoparquet_table from geoparquet_pydantic import validate_geoparquet_file from geoparquet_pydantic import geojson_to_geoparquet from geoparquet_pydantic import geoparquet_to_geojson `
# Roadmap
[ ] Make CLI file<>file functions w/ click.
[ ] Add parrallelized Parquet read for geoparquet_pydantic.geoparquet_to_geojson().
# Contribute
We encourage contributions, feature requests, and bug reports!
Here is our recomended workflow:
Use dev-requirements.txt to install our development dependencies.
Make your edits using pyright as a linter.
Use pre-commit run –all-file before commiting your work.
If you add a new feature, we request that you add test coverage for it.
Happy coding!
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
Built Distribution
File details
Details for the file geoparquet_pydantic-0.0.1.tar.gz
.
File metadata
- Download URL: geoparquet_pydantic-0.0.1.tar.gz
- Upload date:
- Size: 81.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a482ecef1c856da9fcaec82a052e477bbc559d6042749b59d24660bae659fbe |
|
MD5 | 9597d2b6f1a3e99541b4ad3606a781ca |
|
BLAKE2b-256 | b048600a04bae770448e0bb82635bed30667afaa8d26aaceb081214f82bb2025 |
File details
Details for the file geoparquet_pydantic-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: geoparquet_pydantic-0.0.1-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc0e3b15cd6a2063498c0b7bb0809dde7d9547b6c3a0d7a0e9fc116074391554 |
|
MD5 | 3330e6bbd84bcd7e713c87634859b23b |
|
BLAKE2b-256 | 008a7af4f6ea6b323de63756c13f9bd9fd2077fb50d7249a5c1406c30ad1a446 |