Skip to main content

Digital service environmental footprint model

Project description

e-footprint model

A toolkit for exhaustively modeling the environmental impact of digital services.

The current perimeter is the carbon footprint associated with the fabrication and usage of servers, storage, network (usage only) and end-user devices necessary for the existence of a web digital service. It is also now possible to model the production of edge devices (like video game consoles, smartphones, servers, etc.) and describe the unitary usage by device over its usage phase, to get the environmental footprint of the deployed fleet. Edge devices support hierarchical grouping via EdgeDeviceGroup with per-component unit multiplicity (nb_of_units), enabling complex fleet structures with nested device and sub-group counts.

Other environmental impacts (water, rare earth metals, etc.) will be added soon through an integration with the Boavizta API, and the lifecycle phases of device transportation and end of life are currently considered negligible.

Getting started

Installation

Check out INSTALL.md.

Documentation

Here is the link to the e-footprint documentation. There you will find a description of all the e-footprint objects, their parameters, the relationship between the objects and the calculated attributes and their graphs.

Graphical interface

You can explore the model’s graphical interface, which is also open source and found in the Boavizta e-footprint interface repository. Please send an email to e-footprint’s main maintainer, Vincent Villet if you wish to give feedback !

Modeling examples

Checkout our open source e-footprint modeling use cases.

Tutorial

pip install efootprint

You can then run the jupyter notebook tutorial to familiarize yourself with the object logic and generate an object relationship graph and a calculation graph as HTML files in the current folder.

object relationships graph
Object relationships graph: usage patterns in deep blue, user journey in blue, user journey steps in pale blue, jobs in gold, infra hardware in red. Hover over a node to get the numerical values of its environmental and technical attributes. For simplifying the graph the Network and Hardware nodes are not shown.
simple calculation graph
Calculation graph: user inputs in gold, hypothesis in darkred, and intermediate calculations in pale blue. Hover over a node to read the formula.

To launch jupyter:

# Todo once to setup jupyter kernel
poetry run ipython kernel install --user --name=efootprint-kernel
# Start Jupyter server with poetry
poetry run jupyter notebook tutorial.ipynb

Dev setup

Check out INSTALL.md.

Code logic

The code has been architectured to separate modeling from optimization from API logic. The goal is to make contribution to the modeling logic as straightforward as possible.

  • Modules that deal with modeling logic are located in efootprint/core.
  • Optimizations (having the model rerun the right calculations whenever an input attribute or a link between objects changes) are dealt with in efootprint/abstract_modeling_classes.
  • All json serialization / deserialization logic, that is essential for making the web interface work, are found in efootprint/api_utils.

Contributing

Check out CONTRIBUTING.md

License

GNU Affero General Public License v3.0

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

efootprint-20.0.0.tar.gz (259.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

efootprint-20.0.0-py3-none-any.whl (312.9 kB view details)

Uploaded Python 3

File details

Details for the file efootprint-20.0.0.tar.gz.

File metadata

  • Download URL: efootprint-20.0.0.tar.gz
  • Upload date:
  • Size: 259.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.5 Darwin/25.4.0

File hashes

Hashes for efootprint-20.0.0.tar.gz
Algorithm Hash digest
SHA256 f0232f6568bb98225fe8b45494de07fb4b6d0a98efa2f1ed23d12d08a74a4884
MD5 eac2ce26c6280f4b107d426b6bf32ab7
BLAKE2b-256 cb854fde3bbda3c5cd63f3291f2d61fa5491cca84f63ea0b7e00ac6b80d4a4a7

See more details on using hashes here.

File details

Details for the file efootprint-20.0.0-py3-none-any.whl.

File metadata

  • Download URL: efootprint-20.0.0-py3-none-any.whl
  • Upload date:
  • Size: 312.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.5 Darwin/25.4.0

File hashes

Hashes for efootprint-20.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b6203a55bb7377ac5aa54317622ec675d3160d8e23dcff68f35c2a84d0e09bf6
MD5 899b8ce1a1fc1e5f1875bcee88fcec1f
BLAKE2b-256 d2fb29258db88a89a456aade345f6b325c4cb7d29bbd598936ca4e41b7d3a920

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page