Installation
Prerequisites
- Python
>=3.11, <4. uv(recommended by repository tooling).- SNAP + Java when running SNAP-dependent commands (
shipdet,worldsar). - Docker Engine if using container workflows.
Setup Steps
# repository root
uv venv .venv
source .venv/bin/activate
uv sync
Environment Variables
Set runtime variables as needed (see Configuration Reference).
export GRID_PATH=./grid/grid_10km.geojson
export GPT_PATH=/path/to/gpt
export HF_TOKEN=***
Configuration
Primary configuration sources are CLI flags, environment variables, and files such as pyproject.toml, docker-compose.yml, and Makefile targets.
Build
# local package install
python -m pip install -e .
# container build
make docker-build
Development
source .venv/bin/activate
uv sync
pytest -q
Production
Production workflows are typically containerized, pinning SNAP and Python dependencies through Docker image builds.
make recreate
Docker
docker compose version
make check-grid
make recreate
Troubleshooting
- SNAP missing: verify
SNAP_HOMEandgptinPATH. - Grid errors: set
GRID_PATHor provide./grid/grid_10km.geojson. - Upload auth failures: set
HF_TOKENor run Hugging Face CLI login.
- matplotlib
- scipy
- python-dateutil>=2.9.0
- six>=1.16.0
- geopandas>=1.1.1
- shapely
- numpy
- openpyxl
- h5py
- numba
- jupyter
- rasterio==1.4.3
- zarr>=3.0.0
- joblib>=1.5.1
- dask>=2025.5.1
- lxml>=5.4.0
- huggingface-hub>=0.34.1
- tifffile>=2025.6.11
- folium>=0.20.0
- plotly>=6.2.0