Firecube
Firecube is a plugin-driven command line interface (CLI) for turning Earth Observation products into analysis-ready datacubes (Zarr or Parquet), on local or S3-compatible object storage.
Firecube provides the ingestion engine. A plugin provides the dataset-specific code that discovers, reads, and converts source files. Failed runs resume where they left off, multiple workers can write to the same product in parallel, and runs report Prometheus metrics, structured logs, and OpenTelemetry traces.
Requirements
- Python 3.12 or higher
uvandgit
Quickstart
Install the released package from PyPI in an isolated environment:
mkdir firecube-quickstart
cd firecube-quickstart
uv venv --python 3.12
source .venv/bin/activate
uv pip install firecube
firecube --version
Install a plugin, using the package name or local checkout documented by that plugin, and inspect it:
firecube plugins install <plugin-package>
firecube plugins list
firecube plugins describe <plugin>
Then ingest source data into a datacube:
firecube ingest <plugin> \
--input-data ./source-data \
--target "file://${PWD}/my_product.zarr" \
--product-name my_product \
--storage-type local \
--storage-driver fsspec \
--output-format zarr \
--write-mode direct
For the full first-run path with the example firecube-quickstart-plugin, follow the Quickstart.
Documentation
The full documentation is available at eumetsat.github.io/firecube:
- Installation
- Install the example plugin
- Prepare source data
- Run ingestion
- Plugin development
- Concepts
- Configure S3 access
- Create an Intake catalog
- CLI reference
Copyright and License
Copyright © EUMETSAT 2025-2026
The provided code and instructions are licensed under Apache License, Version 2.0.