<a href="https://pypi.org/project/esbmtk/">
<img alt="Documentation Status" src="https://img.shields.io/pypi/v/esbmtk.svg"/>
</a>
<a href="https://pyscaffold.org">
<img alt="Project generated with PyScaffold" src="https://img.shields.io/badge/-PyScaffold-005CA0?logo=pyscaffold"/>
</a>
<a href="https://esbmtk.readthedocs.io/en/latest/?badge=latest">
<img alt="Documentation Status" src="https://readthedocs.org/projects/esbmtk/badge/?version=latest" />
</a>
<a href="https://www.python.org/doc/versions/">
  <img alt="Python 3.12 ready" src="https://img.shields.io/badge/python-3.12-blue" />
</a>
<a href="https://doi.org/10.5281/zenodo.14549407"><img src="https://zenodo.org/badge/DOI/10.5281/zenodo.14549407.svg" alt="DOI"></a>
<a href="https://anaconda.org/conda-forge/scores"> <img src="https://anaconda.org/conda-forge/scores/badges/version.svg" /> </a>
<a href="https://anaconda.org/conda-forge/scores"> <img src="https://anaconda.org/conda-forge/scores/badges/latest_release_relative_date.svg" /> </a>


# ESBMTK - The  Earth Sciences Box Modeling Toolkit:  A Python Library for Research and Teaching

<img src="https://raw.githubusercontent.com/uliw/esbmtk/staging/mpc.png" width="600px" align="center">"

The Earth Science Box Modeling Toolkit (ESBMTK) is a user-friendly Python library that simplifies the creation of models to study Earth system processes, such as the carbon cycle and ocean chemistry. It enhances learning by emphasizing concepts over programming and is accessible to students and researchers alike. By abstracting complex calculations and promoting code clarity, ESBMTK accelerates model development while improving reproducibility and the usability of scientific research. It uses an object oriented declarative approach to describe models, and encapsulated typical modeling tasks like gas-exchange and carbonate dissolution through python classes. See Wortmann et al. 2025 <https://gmd.copernicus.org/articles/18/1155/2025/> as well as the manual at <https://esbmtk.readthedocs.io/> for installation instructions, usage, and example code.

Note: ESBMTK 0.14.2.x is a major update that now requires python 3.12 (released May 1<sup>st</sup> 2025). See the [Changelog](https://esbmtk.readthedocs.io/en/latest/changelog.html) for details. The latest version is 0.14.2.8 (Nov. 6<sup>th</sup> 2025)

ESBMTK is available via

-   GitHub `git clone https://github.com/uliw/esbmtk.git`
-   pypi <https://pypi.org/project/esbmtk/>
-   conda-forge <https://anaconda.org/conda-forge/esbmtk>
-   sample code is available at <https://github.com/uliw/ESBMTK-Examples>
-   See the documentation at <https://esbmtk.readthedocs.io/> and <https://gmd.copernicus.org/articles/18/1155/2025/>

ESBMTK is under active development, before updating, please check the [Changelog](https://esbmtk.readthedocs.io/en/latest/changelog.html)
