oxigdal 0.1.0

Pure Rust geospatial data abstraction library — the Rust alternative to GDAL
Documentation
# OxiGDAL

**Pure Rust Geospatial Data Abstraction Library — the Rust alternative to GDAL**

[![Crates.io](https://img.shields.io/crates/v/oxigdal.svg)](https://crates.io/crates/oxigdal)
[![Documentation](https://docs.rs/oxigdal/badge.svg)](https://docs.rs/oxigdal)
[![License](https://img.shields.io/crates/l/oxigdal.svg)](LICENSE)

OxiGDAL is a comprehensive geospatial data abstraction layer written in **100% Pure Rust**
with zero C/Fortran dependencies. It provides GDAL-like functionality for reading, writing,
and processing geospatial raster and vector data.

## Quick Start

```toml
[dependencies]
oxigdal = "0.1"  # GeoTIFF + GeoJSON + Shapefile by default
```

```rust
use oxigdal::Dataset;

fn main() -> oxigdal::Result<()> {
    // Open any supported format — just like GDALOpen()
    let dataset = Dataset::open("world.tif")?;
    println!("Format: {}", dataset.format());
    println!("Size: {}×{}", dataset.width(), dataset.height());
    
    // List all enabled drivers
    println!("Drivers: {:?}", oxigdal::drivers());
    Ok(())
}
```

## Feature Flags

| Feature | Default | Description |
|---------|---------|-------------|
| `geotiff` || GeoTIFF / COG raster format |
| `geojson` || GeoJSON vector format |
| `shapefile` || ESRI Shapefile |
| `full` || All 13 format drivers |
| `cloud` || S3, GCS, Azure storage |
| `proj` || CRS transformations |
| `algorithms` || Raster/vector algorithms |
| `ml` || Machine learning |
| `gpu` || GPU acceleration |
| `server` || OGC tile server |

All format and feature flags can be enabled individually.

## Why OxiGDAL?

| | GDAL (C/C++) | OxiGDAL (Rust) |
|---|---|---|
| **Dependencies** | C/C++ toolchain, PROJ, GEOS, etc. | `cargo add oxigdal` |
| **Cross-compilation** | Complex | Trivial (WASM, mobile, embedded) |
| **Memory safety** | Manual | Guaranteed by Rust |
| **Concurrency** | Thread-unsafe APIs | Fearless concurrency |
| **Binary size** | Large monolith | Pay-for-what-you-use features |

## Ecosystem

OxiGDAL is a workspace of **65+ crates** covering:

- **13 format drivers** (GeoTIFF, GeoJSON, Shapefile, GeoParquet, NetCDF, HDF5, Zarr, GRIB, STAC, Terrain, VRT, FlatGeobuf, JPEG2000)
- **Cloud storage** (S3, GCS, Azure Blob)
- **Processing** (algorithms, analytics, streaming, ML, GPU)
- **Serving** (OGC tile/feature server, WMS/WMTS/WFS)
- **Bindings** (Python, Node.js, WASM)
- **Infrastructure** (CLI, Jupyter, Kubernetes, edge computing)

## License

Licensed under Apache-2.0.

Copyright © COOLJAPAN OU (Team Kitasan)