Metadata-Version: 2.4
Name: r055y
Version: 0.0.7
Summary: Open source spatial analysis library with AI-ready GIS tools for hallucination-free spatial operations.
License: MIT
License-File: LICENSE
Requires-Python: >=3.8
Requires-Dist: geopandas
Description-Content-Type: text/markdown

# r055y

An open source spatial analysis library built for AI-driven GIS workflows. Designed to give AI systems like Claude reliable, hallucination-free tools for spatial operations.

## Install

```bash
pip install r055y
```

## Functions

### `r.Intersect(input_layer, intersect_layer, output=None)`
Computes geometric intersection of input features against a polygon boundary.
- `input_layer` — point, line, or polygon (file path or GeoDataFrame)
- `intersect_layer` — polygon layer defining the intersection boundary
- `output` — file path to save result (`.gpkg`, `.shp`, etc.) — omit to return a GeoDataFrame

```python
r.Intersect("wells.shp", "boundary.shp", "result.gpkg")
```

---

### `r.Buffer(input_layer, distance, unit="meters", output=None)`
Buffers input features by a given distance and unit.
- `input_layer` — point, line, or polygon (file path or GeoDataFrame)
- `distance` — numeric buffer distance
- `unit` — `meters`, `km`, `miles`, `feet`, `usfeet`, `nautical miles`
- `output` — file path to save result — omit to return a GeoDataFrame

```python
r.Buffer("wells.shp", 1, "miles", "wells_buffer.gpkg")
```

---

### `r.Clip(input_layer, clip_layer, output=None)`
Clips input features to the extent of a polygon clip boundary.
- `input_layer` — point, line, or polygon (file path or GeoDataFrame)
- `clip_layer` — polygon layer defining the clip boundary
- `output` — file path to save result — omit to return a GeoDataFrame

```python
r.Clip("roads.shp", "county.shp", "roads_clipped.gpkg")
```

---

## Changelog

### v0.0.6 — 2026-06-25
- Added `Buffer()` with full unit support (meters, km, miles, feet, usfeet, nautical miles)
- Added `Clip()` for clipping features to a polygon boundary
- Standardized all function signatures to individual args (no more list inputs)
- All functions auto-reproject, validate geometries, and return plain English errors

### v0.0.5 — 2026-06-25
- Rebuilt `Intersect()` with full input validation and guardrails

### v0.0.4 — 2026-06-24
- Updated package description

### v0.0.3 — 2026-06-24
- Updated package description

### v0.0.2 — 2026-06-24
- Initial `Intersect()` function

### v0.0.1 — 2026-06-24
- Initial release
