Metadata-Version: 2.4
Name: rle-python
Version: 0.2.0
Summary: Core tools for IUCN Red List of Ecosystems analysis with local and cloud data access
Project-URL: Homepage, https://rle-assessment.github.io/rle-python/
Project-URL: Documentation, https://rle-assessment.github.io/rle-python/
Project-URL: Repository, https://github.com/RLE-Assessment/rle-python
Project-URL: Issues, https://github.com/RLE-Assessment/rle-python/issues
Author-email: Tyler Erickson <tyler@vorgeo.com>
License-Expression: Apache-2.0
License-File: LICENSE
Keywords: AOO,EOO,IUCN,RLE,Red List of Ecosystems,biodiversity,ecology,geospatial
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: GIS
Requires-Python: <3.13,>=3.11
Requires-Dist: fsspec
Requires-Dist: geopandas>=1.1.3
Requires-Dist: numpy>=1.24.0
Requires-Dist: pandas
Requires-Dist: pyarrow
Requires-Dist: pyproj
Requires-Dist: pyyaml>=6.0.3
Requires-Dist: rasterio>=1.3.0
Requires-Dist: rasterstats
Requires-Dist: rioxarray
Requires-Dist: shapely>=2
Requires-Dist: typer>=0.20.0
Provides-Extra: aws
Requires-Dist: s3fs; extra == 'aws'
Provides-Extra: gcs
Requires-Dist: gcsfs; extra == 'gcs'
Provides-Extra: viz
Requires-Dist: lonboard; extra == 'viz'
Requires-Dist: matplotlib>=3.9.0; extra == 'viz'
Description-Content-Type: text/markdown

# rle-python

Core tools for **IUCN Red List of Ecosystems (RLE)** analysis.

`rle-python` provides the RLE data model and assessment business logic
(Extent of Occurrence, Area of Occupancy grids, ecosystem code assignment,
criteria/categories) together with **local and cloud-file data access** — it
has no Earth Engine dependency.

Everything imports under the shared `rle` namespace:

```python
from rle.core import Ecosystems, make_aoo_grid, make_eoo

eco = Ecosystems.from_file("ecosystems.geojson", ecosystem_column="ECO_NAME")
aoo = make_aoo_grid(eco).compute()
print(aoo.cell_count, aoo.aoo_km2)

eoo = make_eoo(eco).compute()
print(eoo.area_km2)
```

## Installation

```bash
pip install rle-python            # local files
pip install rle-python[gcs]       # + gs:// GeoParquet (gcsfs)
pip install rle-python[aws]       # + s3:// GeoParquet (s3fs)
pip install rle-python[viz]       # + interactive maps (lonboard) / static fallback
```

## Optional backends

Additional data sources are provided by separate distributions that install
into the same `rle` namespace and register themselves for discovery:

```bash
pip install rle-python-gee        # Google Earth Engine backends -> rle.gee
```

```python
from rle.gee import GeeEcosystems
eco = GeeEcosystems("projects/my-project/assets/ecosystems")
```

List the backends available in your environment:

```bash
rle backends
```

## Layout

`rle-python` ships the `rle.core` package under a PEP 420 namespace (`rle/`),
so multiple `rle-*` distributions can coexist without conflict.
