rio-stac
Create STAC Items from raster datasets.
Decision gist · record as of 2026-08-14
Yes. The package is actively maintained, has low install friction, carries a permissive license, and solves a specific and well-defined problem in geospatial data cataloging. It is suitable for production use in STAC-based workflows, with no known security vulnerabilities and support for current Python versions (3.10–3.13).AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires rasterio, which depends on GDAL/GEOS system libraries; ensure these geospatial dependencies are installed on your system.
- Low friction install with only two runtime dependencies (rasterio and pystac).
- The package is actively maintained with a recent release in September 2025 and steady repository activity.
License · maintenance · safety
permissive license (permissive) — Permissive license treatment means you can use this package in commercial and proprietary projects without significant legal constraints.
last release 2025-09-17 (331 days) · last repo commit 2026-07-27 · 93 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 94,741 downloads/mo, #13,310 on PyPI
Alternatives
Verify before relying
pip install rio-stac
from rio_stac import rio_stac
import rasterio
with rasterio.open('dataset.tif') as src:
item = rio_stac.create_stac_item(src)- Whether the package provides a CLI interface (the description shows 'rio stac' command but does not explicitly document it)
- Performance characteristics when processing large raster files or datasets with many bands
- Whether custom STAC extensions beyond projection, raster, and eo can be added or configured
What it is and what it does
rio-stac is a rasterio plugin that transforms raster datasets into valid STAC Items—standardized geospatial catalog entries that follow the Spatiotemporal Asset Catalog specification. It reads raster metadata (CRS, bounds, bands, statistics) and wraps them in a STAC-compliant JSON structure, making raster data discoverable and interoperable within STAC ecosystems. The library is built on pystac to ensure strict adherence to the STAC specification.
Typical use is in geospatial data pipelines where you need to catalog raster files for discovery, archival, or integration into larger data systems. It extracts projection information, band statistics, and geometry automatically, then generates a complete STAC Item with assets, links, and metadata ready for publication to a STAC catalog or API.
Use it for
- Catalog satellite imagery or aerial photography into a STAC-compliant repository for discovery and access.
- Automate metadata extraction from GeoTIFF or COG files to populate a geospatial data catalog.
- Generate STAC Items for raster datasets as part of a data ingestion pipeline into cloud-native geospatial systems.
- Create standardized metadata records for raster analysis outputs to make them discoverable in STAC APIs.
- Batch-process multiple raster files to generate STAC Items for archival or publication.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The package is actively maintained, has low install friction, carries a permissive license, and solves a specific and well-defined problem in geospatial data cataloging. It is suitable for production use in STAC-based workflows, with no known security vulnerabilities and support for current Python versions (3.10–3.13).
Install
rio-stac on PyPI
Before you install
Low friction install with only two runtime dependencies (rasterio and pystac). The package is actively maintained with a recent release in September 2025 and steady repository activity.
Requires rasterio, which depends on GDAL/GEOS system libraries; ensure these geospatial dependencies are installed on your system.
License in practice
Permissive license treatment means you can use this package in commercial and proprietary projects without significant legal constraints.
Quickstart
pip install rio-stac
from rio_stac import rio_stac
import rasterio
with rasterio.open('dataset.tif') as src:
item = rio_stac.create_stac_item(src)
Verify before relying
- Whether the package provides a CLI interface (the description shows 'rio stac' command but does not explicitly document it)
- Performance characteristics when processing large raster files or datasets with many bands
- Whether custom STAC extensions beyond projection, raster, and eo can be added or configured
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesrasteriopystac |
| Maintenance | Actively maintained 331 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 94,741 / month, #13,310 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: Information TechnologyIntended Audience :: Science/ResearchLicense :: OSI Approved :: BSD LicenseProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Topic :: Scientific/Engineering :: GIS |
Evidence: rio_stac-0.12.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “stac item generation from rasters”
- rio-stacrio-stac creates valid STAC Items from raster datasets by reading…
- pystac-ext-item-assetsExtends PySTAC to support the Item Assets Definition Extension,…
- stac-fastapi-pgstacProvides a FastAPI-based HTTP interface to PgSTAC, a PostgreSQL…
Give your agent the search over MCP, or paste the wish link into any chat.
More GIS packages
Shapely provides Python tools for creating, manipulating, and analyzing 2D geometric objects (points, lines, polygons) using the GEOS library, with both scalar and vectorized NumPy-based operations.
pyproj provides a Python interface to PROJ, enabling cartographic projections and coordinate system transformations for geospatial applications.
GeoPandas extends pandas DataFrames to handle geographic data, combining pandas operations with shapely geometry and spatial analysis capabilities that would otherwise require a spatial database.
Install it if you work with geographic data in Python and want to avoid setting up a spatial database or learning a separate GIS tool.
geopy is a Python client for geocoding and distance calculation that converts addresses to coordinates and vice versa using multiple web-based geocoding services, and computes geodesic and great-circle distances between geographic points.
Install it if you need geocoding or distance calculations in your application.
Pyogrio provides fast, bulk-oriented read and write access to vector spatial data formats (Shapefile, GeoPackage, GeoJSON, etc.) via GDAL/OGR bindings, typically for use with GeoPandas GeoDataFrames.
h3 provides Python bindings to Uber's H3 geospatial indexing library, converting geographic coordinates into hierarchical hexagonal grid cells and performing spatial operations on them.
See also pystac-ext-raster · pystac-ext-projection · pystac-ext-grid · pystac · rio-tiler · pystac-ext-classification · pystac-ext-eo · pystac-ext-xarray-assets · stac-pydantic · rio-cogeo