Climakitae

Enable a transition from climate vulnerability assessments to decision support for investor-owned utilities and other stakeholders.
https://github.com/cal-adapt/climakitae

Category: Climate Change
Sub Category: Climate Data Processing and Analysis

Keywords from Contributors

pangeo

Last synced: about 23 hours ago
JSON representation

Repository metadata

A Python toolkit for retrieving, visualizing, and performing scientific analyses with data from the Cal-Adapt Analytics Engine.

README.md

Climakitae

codecov
CI
Documentation Status
PyPI version
Python
License
Code style: black

A powerful Python toolkit for climate data analysis and retrieval from the Cal-Adapt Analytics Engine (AE).

Climakitae provides intuitive tools for accessing, analyzing, and visualizing downscaled CMIP6 data, enabling researchers and practitioners to perform comprehensive climate impact assessments for California.

[!WARNING]
This package is under active development. APIs may change between versions.

Key Features

  • 🌑️ Comprehensive Climate Data Access: Retrieve climate variables from hosted climate models
  • πŸ“Š Downscaled Climate Models: Access dynamical (WRF) and statistical (LOCA2) downscaling methods
  • πŸ—ΊοΈ Spatial Analysis Tools: Built-in support for geographic subsetting and spatial aggregation
  • πŸ“ˆ Climate Indices: Calculate heat indices, warming levels, and extreme event metrics
  • πŸ”§ Flexible Data Export: Export to NetCDF, CSV, and Zarr
  • πŸ“± GUI Integration: Works seamlessly with climakitaegui for interactive analysis

About Cal-Adapt

Climakitae is developed as part of the Cal-Adapt Analytics Engine, a platform for California climate data and tools. Cal-Adapt provides access to cutting-edge climate science to support adaptation planning and decision-making.

Getting Started

Installation via Conda

Prerequisites

Install 1.4.0 with conda on Linux

For additional details on the latest version and step-by-step installation instructions please visit the wiki

# get the conda lock file from github
curl https://raw.githubusercontent.com/cal-adapt/cae-environments/refs/heads/main/conda-lock/climakitae/1.3.0/conda-linux-64.lock -o conda-linux-64.lock

# create and activate your environment
conda create -n climakitae --file conda-linux-64.lock
conda activate climakitae

# install climakitae
pip install https://github.com/cal-adapt/climakitae/archive/refs/tags/1.4.0.zip

Installation via Pip

Prerequisites

  • Python 3.12
  • pip

Install 1.3.0 with pip on Linux

For additional details on the latest version and step-by-step installation instructions please visit the wiki

# get the requirements.txt file from github
curl https://raw.githubusercontent.com/cal-adapt/climakitae/refs/heads/release-1.3.0/requirements.txt -o requirements.txt

# load packages from requirements.txt
pip install -r requirements.txt

# install climakitae
pip install https://github.com/cal-adapt/climakitae/archive/refs/tags/1.4.0.zip

Basic Usage

from climakitae.core.data_interface import get_data

# Retrieve temperature data for California
data = get_data(
    variable="Air Temperature at 2m",
    downscaling_method="Dynamical", 
    resolution="9 km",
    timescale="monthly",
    scenario="SSP 3-7.0",
    cached_area="CA"
)

# Data is returned as an xarray Dataset
print(data)

Documentation

Resource Description
AE Navigation Guide Interactive notebook tutorial
API Reference Complete API documentation
AE Notebooks Sample notebooks and scripts
Contributing Development guidelines

Development Setup

Prerequisites

Dev Environment Setup (Linux)

git clone https://github.com/cal-adapt/climakitae.git
cd climakitae
conda create -n climakitae --file conda-linux-64.lock
conda activate climakitae

Running Tests

# Run basic tests
pytest -m "not advanced"

# Run all tests
pytest

# Run with coverage
pip install pytest-cov
pytest --cov=climakitae --cov-report=html

Contributing

We welcome contributions! Please see our contributing guidelines for details on:

  • πŸ› Reporting bugs
  • πŸ’‘ Requesting features
  • πŸ”§ Submitting code changes
  • πŸ“– Improving documentation

Quick Development Workflow

Open a βš™οΈ code improvement issue describing the feature you'd like to develop.

Then, checkout and setup your branch:

# Fork the repo and create a feature branch
git checkout -b feature/your-feature-name

# Make your changes and add tests
# ...

# Run tests and linting
pytest
black climakitae/
isort climakitae/

# Submit a pull request

When submitting a pull request, please tag at least two project maintainers/developers for review.

License

This project is licensed under the BSD 3-Clause License - see the LICENSE file for details.

Related Projects

Support


Contributors

Contributors


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 23 days ago

Total Commits: 3,928
Total Committers: 19
Avg Commits per committer: 206.737
Development Distribution Score (DDS): 0.783

Commits in past year: 1,426
Committers in past year: 9
Avg Commits per committer in past year: 158.444
Development Distribution Score (DDS) in past year: 0.547

Name Email Commits
Nicole Keeney n****y@g****m 853
claalmve c****9@b****u 728
neilSchroeder n****r@g****m 646
Eric Lehmer e****r@b****u 440
Victoria Ford f****o@g****m 301
Ana Ordonez a****z@e****m 282
neilSchroeder n****r@g****m 153
naomi t****g 139
Tianchi-Liu l****c@b****u 92
Cora Kingdon c****n@b****u 89
bethem b****h@e****m 58
Brian Galey b****y@g****m 39
Nabig Chaudhry n****g@l****v 33
Will Krantz k****w@g****m 24
Owen Doherty o****y@g****m 22
Grace Di Cecco 3****o 12
Calvin Chen c****n@C****l 9
Brian Galey b****y@b****u 5
copilot-swe-agent[bot] 1****t 3

Committer domains:


Issue and Pull Request metadata

Last synced: 2 months ago

Total issues: 53
Total pull requests: 603
Average time to close issues: 3 months
Average time to close pull requests: 8 days
Total issue authors: 15
Total pull request authors: 11
Average comments per issue: 1.66
Average comments per pull request: 1.08
Merged pull request: 454
Bot issues: 0
Bot pull requests: 0

Past year issues: 32
Past year pull requests: 284
Past year average time to close issues: 26 days
Past year average time to close pull requests: 7 days
Past year issue authors: 12
Past year pull request authors: 8
Past year average comments per issue: 1.75
Past year average comments per pull request: 0.99
Past year merged pull request: 202
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/cal-adapt/climakitae

Top Issue Authors

  • elehmer (14)
  • vicford (12)
  • neilSchroeder (6)
  • zladwp (4)
  • acordonez (3)
  • claalmve (3)
  • nathancoliver (2)
  • rd1l (2)
  • janluong (1)
  • nicolejkeeney (1)
  • mirachokshi (1)
  • thenaomig (1)
  • alwils916 (1)
  • GondekNP (1)
  • dlebauer (1)

Top Pull Request Authors

  • claalmve (198)
  • elehmer (148)
  • nicolejkeeney (79)
  • neilSchroeder (67)
  • acordonez (35)
  • vicford (33)
  • Tianchi-Liu (26)
  • wkrantz (7)
  • thenaomig (7)
  • gdicecco (2)
  • corakingdon (1)

Top Issue Labels

  • bug (26)
  • enhancement (6)
  • environment (3)
  • Release 1.2.0 (2)
  • Release 1.2.2 (2)
  • question (1)

Top Pull Request Labels

  • Advanced Testing (35)
  • backburner (10)
  • Urgent (2)
  • bug (1)
  • enhancement (1)

Package metadata

proxy.golang.org: github.com/cal-adapt/climakitae

pypi.org: climakitae

Climate data analysis toolkit

  • Homepage: https://github.com/cal-adapt/climakitae
  • Documentation: https://climakitae.readthedocs.io
  • Licenses: BSD-3-Clause
  • Latest release: 1.5.0 (published 6 days ago)
  • Last Synced: 2025-12-31T17:17:15.989Z (6 days ago)
  • Versions: 12
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 486 Last month
  • Rankings:
    • Dependent packages count: 10.329%
    • Average: 34.233%
    • Dependent repos count: 58.137%
  • Maintainers (1)

Dependencies

.github/workflows/ci.yaml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • conda-incubator/setup-miniconda v2 composite
  • psf/black stable composite
docs/requirements.txt pypi
  • Sphinx ==4.4.0
  • sphinx-book-theme ==0.2.0
  • sphinx-design *
requirements.txt pypi
  • cartopy ==0.20.1
  • dask-gateway ==0.9.0
  • geopandas ==0.10.2
  • geoviews ==1.9.2
  • holoviews ==1.14.6
  • hvplot ==0.7.3
  • intake ==0.6.4
  • intake-xarray ==0.5.0
  • jinja2 ==3.0.2
  • matplotlib ==3.4.3
  • metpy ==1.1.0
  • numpy ==1.21.2
  • pandas ==1.3.4
  • panel ==0.12.4
  • param ==1.11.1
  • psutil ==5.8.0
  • pyproj ==3.2.1
  • pytest ==7.1.3
  • rioxarray ==0.7.1
  • s3fs ==2021.10.1
  • scipy ==1.7.1
  • shapely ==1.7.1
  • xarray ==0.19.0
setup.py pypi
environment.yml conda
  • cartopy
  • geopandas
  • geoviews
  • holoviews
  • hvplot
  • intake
  • intake-esm
  • intake-geopandas
  • intake-xarray
  • jinja2
  • matplotlib
  • metpy
  • numpy
  • pandas
  • panel
  • param
  • pip
  • proj
  • psutil
  • pygeos
  • pyproj
  • pytest
  • python
  • rioxarray
  • s3fs
  • scipy
  • shapely
  • xarray
  • xmip

Score: 12.688051163738443