pledge4future / co2calculator

Python package to calculate work related CO2 emissions from heating and electricity consumption as well as business trips and commuting.
https://pledge4future.github.io/co2calculator/
GNU General Public License v3.0
13 stars 7 forks source link
climate-change co2-emissions paris-agreement research

CO2Calculator

status: experimental

Python package to calculate work related CO2 emissions from heating and electricity consumption as well as business trips and commuting.

ℹ️ Description

This package is part of Pledge4Future, a project to quantify, monitor and reduce work-related emissions collectively and sustainably.

:computer: Installation

With pip (recommended)

PyPi release coming soon!

From source

To install this package from source, clone the repository as usual, for example with:

git clone https://github.com/pledge4future/co2calculator.git
cd co2calculator

This package requires Python 3.10, 3.11 or 3.12 and can be installed using poetry. You can install it in your (virtual) environment with:

$ pip install -U poetry
$ poetry install --no-root

⌨ How to Use

Learn how to use co2calculator in our detailed documentation. [...]

The CO2 Calculator uses the OpenRouteService (ORS) API to obtain distances between the locations provided by the user to calculate CO2 emissions of business trips. This requires an API key, which is read from an .env file.

Create an ORS API key and save it in your .env file

1) Go to https://openrouteservice.org/dev/#/signup and create an account (or sign up with GitHub). 2) In the Dev dashboard, switch to the tab TOKENS and request a free token. 3) Once you have the key, click on it to copy it to clipboard. 4) Insert the key into sample.env and rename the file to .env.

:couple: Contribution guidelines

If you want to contribute to this project, please fork this repository and create a pull request with your suggested changes.

Install pre-commit hooks

To ensure coding style we use pre-commit hooks. Install them locally using

$ pre-commit install

They will be run automatically every time you try to create a commit. black will adapt the code automatically to conform to PEP8 code style. After this has been done you may need to add the file again to the staging area.

Run tests

After you have made changes to the code, run the units tests by executing

$ pytest

📄 References

Emission factors

Conversion factors

Detour coefficients and constants

Airports and Train Stations

🤝 Project partners

⚖️ License

See License