Quick start¶
This is the fastest way to try Open Climate Service locally with the built-in datasets: clone the repository, configure an extent, start the service, then ingest and view data from the web interface.
Running a service for a country?
For an operational deployment — custom datasets, version pinning, configuration kept in its own repository — the instance guide is the recommended path. Most people running a real climate service should start there. This quick start is for evaluating the service or developing against the core repository.
Prerequisites¶
- Python 3.12 or higher
- uv for dependency management
- Git
- Make (
make— available by default on macOS and most Linux distributions; on Windows use WSL or run the commands in the Makefile directly)
Step 1: Clone and install¶
This quick start runs from a clone of the core repository, which is best for evaluating the service or developing against it. To run an instance from the released PyPI package instead — in its own repository, without cloning this one — follow the instance guide.
Step 2: Configure the spatial extent¶
The repo includes climate-service.yaml.example with Sierra Leone as a starting point.
Copy it to climate-service.yaml (which is gitignored, so your local extent stays out of
version control) and replace the entry with your area of interest:
id: rwanda-climate-service
name: Rwanda Climate Service
extent:
name: Rwanda
bbox: [28.8, -2.9, 30.9, -1.0] # [xmin, ymin, xmax, ymax] in WGS84
country_code: RWA # ISO 3166-1 alpha-3, required for WorldPop
data_dir: ./data
bbox is required; country_code is needed for WorldPop downloads. To find a bounding
box, bboxfinder.com is a useful tool. For the full list of
configuration fields, see the instance guide.
Step 3: Configure environment variables¶
CLIMATE_SERVICE_CONFIG=./climate-service.yaml is already set, and the remaining defaults
are enough to run the API and ingest CHIRPS3 and WorldPop data. For ERA5-Land downloads,
see ERA5-Land datasets.
Step 4: Start the service¶
The service starts on http://127.0.0.1:8000. Open it in a browser — the landing page
links to the management and map-viewer interfaces.
Step 5: Ingest and view data¶
Open http://127.0.0.1:8000/manage and ingest your first dataset through the form.
CHIRPS3 (daily precipitation) requires no API key and is a good one to start with — pick
it from the dropdown, enter a start date, and ingest (leave Publish checked). Progress
streams live, and the dataset appears in the status table when it finishes.
Then open http://127.0.0.1:8000/map to view it on the map, stepping through time with
the slider.
See Using the web interface for a full walkthrough of the management and map-viewer pages.
Prefer the API?
Everything the interface does is also available over HTTP. To ingest, sync, discover, and open data programmatically, see Accessing data and the API reference.
Next steps¶
- Instance guide — set up a versioned instance repository for your country, with custom datasets and deliberate upgrades (the recommended path for operators).
- Using the web interface — manage ingestion, sync, and the map viewer.
- Accessing data — discover and open datasets from Python or any tool.
- Adding custom datasets — add sources beyond the built-in templates.