reproj
Reproject shapely geometries
What it is and what it does
Reproj is a minimal wrapper around pyproj and shapely that reduces the boilerplate needed to reproject individual shapely geometries between coordinate reference systems. Instead of manually creating a pyproj Transformer and calling shapely.ops.transform, you pass a geometry and two CRS identifiers to a single reproj() function. It mirrors the ease of use of GeoPandas's to_crs method but for standalone shapely features rather than GeoDataFrames.
The package is designed for developers working with vector geospatial data who need to transform individual geometries or small collections between coordinate systems. It requires Python 3.9 or later and depends on pyproj for coordinate transformation logic and shapely for geometry handling.
Use it for:
- Convert a single shapely geometry from WGS84 (EPSG:4326) to a projected UTM zone for distance calculations.
- Batch reproject geometries in a loop without writing the pyproj Transformer boilerplate each time.
- Simplify coordinate system conversions in GIS scripts that don't warrant a full GeoPandas workflow.
- Transform geometries between arbitrary EPSG codes in geospatial data processing pipelines.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Reproject shapely geometries between coordinate reference systems with a single function call, wrapping pyproj and shapely to simplify the common GIS transformation task.
Yes, if you work with individual shapely geometries and need frequent coordinate system transformations. The package genuinely simplifies a common task and has no security vulnerabilities. It is actively maintained, has low install friction, and uses a permissive license. The main caveat is its small ecosystem footprint (1 star, early beta status) — it is stable for its narrow purpose but not battle-tested at scale.
Install
reproj on PyPI
pip
pip install reprojuv
uv add reprojpoetry
poetry add reprojInstalling reproj
Before you install
Low install friction with a pure-Python wheel and only two runtime dependencies (pyproj and shapely). Actively maintained with a recent release 75 days ago and ongoing repository activity.
License in practice
BSD-3-Clause is permissive; you can use this package freely in commercial and private projects with minimal restrictions beyond retaining the license notice.
Quickstart
pip install reproj
from reproj import reproj
utm_shape = reproj(wgs84_shape, 4326, 32630)
Verify before relying
- Whether the package handles edge cases like null geometries, invalid CRS codes, or mixed geometry types gracefully.
- Performance characteristics when reprojecting large geometry collections or complex shapes.
- Whether additional CRS formats beyond EPSG codes (e.g., WKT, proj strings) are supported.
Package facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — pyproj, shapely |
| Maintenance | actively maintained — 75 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 267,724/month — #8,287 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: reproj-0.2.0-py3-none-any.whl
Keywords: projection, transform, vector, gis, geospatial, geographic
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
geopandasGeoPandas extends pandas DataFrames to handle…
permissive · top 1,000 on PyPI
odc-geoProvides projection-aware geometry classes…
permissive · top 15,000 on PyPI
pyprojpyproj provides a Python interface to PROJ,…
permissive · top 1,000 on PyPI
xprojXProj is an Xarray extension that provides…
permissive · top 15,000 on PyPI
reprojectReproject astronomical images between different…
permissive · top 15,000 on PyPI
shapelyShapely provides Python tools for creating,…
permissive · top 1,000 on PyPI
topojsontopojson encodes spatial data into TopoJSON…
permissive · top 15,000 on PyPI
antimeridianFixes Shapely geometries and GeoJSON features…
permissive · top 15,000 on PyPI
utmConverts between latitude/longitude coordinates…
permissive · top 5,000 on PyPI
dask-geopandasDask-GeoPandas parallelizes geospatial…
permissive · top 15,000 on PyPI