Skip to content

Green-Software-Foundation/awesome-green-software

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Green Software Awesome

Research, tools, code, libraries, and training for building applications that emit less carbon into our atmosphere.

An awesome list created and managed by the Open Source Working Group in the Green Software Foundation.

Disclaimer

This list is created for informational purposes only, and any links do not constitute an endorsement, recommendation, or favoring by the Green Software Foundation, its member organizations, or contributors to the list.

THESE MATERIALS ARE PROVIDED “AS IS.” The parties expressly disclaim any warranties (express, implied, or otherwise), including implied warranties of merchantability, non-infringement, fitness for a particular purpose, or title, related to the materials. The entire risk of implementing or otherwise using the materials is assumed by the implementer and user. IN NO EVENT WILL THE PARTIES BE LIABLE TO ANY OTHER PARTY FOR LOST PROFITS OR ANY FORM OF INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER FROM ANY CAUSES OF ACTION OF ANY KIND WITH RESPECT TO THIS DELIVERABLE OR ITS GOVERNING AGREEMENT, WHETHER BASED ON BREACH OF CONTRACT, TORT (INCLUDING NEGLIGENCE), OR OTHERWISE, AND WHETHER OR NOT THE OTHER MEMBER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Contents

Dev / Tooling

AI

AI Carbon

AI Energy

Cloud-based

AWS

Azure

Google

OVHcloud

Multicloud

  • Cloud Carbon Footprint An open-source cloud energy and carbon emissions measurement tool.
  • Green Metrics Tool A free open-source (FOSS) tool to measure the energy / CO2 consumption of your software architecture.
  • kube-green A simple open-source k8s addon that automatically shuts down (some of) your resources when you don't need them.
  • Carbonifer Command Line Tool to control carbon emission of your cloud infrastructure.
  • Gaia Gen A SaaS solution for monitoring and reporting cloud emissions (there is a cost associated with this solution).

Code based

General purpose

Emissions

  • Carbon AppInsights An Azure Functions-based solution for logging emissions data for Azure regions from Electricity Maps to Azure Monitor for alerting triggers and automated actions.
  • Carbon Aware SDK A Web API and command line for obtaining unified forecast and historical power grid emissions data based on location and time to help build Carbon Aware software.
  • Carbon Aware Computing Hangfire Extension A Hangfire extension to schedule tasks with carbon awareness in mind. The best point in time is calculated based on emission forecasts to get a window with a minimal grid carbon intensity.
  • Carbon Aware Computing - Tools & Free forecast data This project aims to provide developers with hassle-free, easy-to-use, ready-to-run tools for carbon-aware computing. The software contains a NuGet package, Powershell commands, and a live instance of the SDK. An open data carbon forecast for Europe is available in the JSON-Carbon SDK-compatible format.
  • GreenScheduled A lightweight, easy-to-integrate scheduling library designed to run processes with carbon awareness in mind. It automatically schedules your process to start during the period of lowest carbon intensity, based on the configured zone and time window.
  • Electricity Maps Datasets Historical location-based electricity datasets with hourly granularity and global coverage for free. The data includes flow-traced carbon intensity with direct and lifecycle emissions factors for 2021-2024.
  • Electricity Maps Free API Free API access to Electricity Maps flow-traced carbon intensity, electricity mix, renewable energy percentage, and carbon-free energy percentage data. Includes access to real-time data and past 24-hour data for one grid.
  • PSElectricityMaps A PowerShell Module for retrieving current carbon emissions data for power grids with a free account on ElectricityMaps / CO2signal.
  • PSWattTime A PowerShell Module for retrieving current carbon emissions data for power grids with a free account on WattTime.org.

Energy

Extensions

  • Approach to Sustainable Software – Python Applications Solution to adopt sustainable software development practices for high reduction in application energy consumption
  • Kepler (Kubernetes-based Efficient Power Level Exporter) uses eBPF to probe energy-related system stats and exports as Prometheus metrics
  • Hardware Sentry Standard OpenTelemetry agent that exposes the energy usage and temperatures of servers, network, and storage systems in data centers
  • PowerJoular: Monitor the power consumption of software and hardware components in real time.
  • scaphandre Power measurement (bare metal hosts, prometheus, within a docker container, etc)
  • Vessim Co-simulation testbed for energy-aware and carbon-aware applications and systems
  • GreenIT-Analysis The extension allows you to use your Dev Tools to measure the ecoIndex of a website and verify the application of web eco-design best practices defined by the "Collectif numérique responsible".

OS-based

Android

  • Creedengo mobile A SonarQube plugin to highlight code structures that may have a negative ecological impact.
  • PowDroid A lightweight CLI tool for measuring energy consumption at runtime (based on batterystats)
  • Greenspector : a set of tools to run measurements on real devices and assess the environmental impacts.

iOS

  • Creedengo iOS A SonarQube plugin to highlight code structures that may have a negative ecological impact.
  • Greenspector : a set of tools to run measurements on real devices and assess the environmental impacts.

Linux

  • FreeIPMI We can get the power consumption of a bare metal machine through the DCMI (IPMI extension).
  • ipmitool We can get the power consumption of a bare metal machine through the DCMI (IPMI extension).
  • PowerAPI A Linux software-defined power meter to estimate process-scale power consumption in real time.
  • PowerTOP A Linux tool to diagnose issues with power consumption and power management.
  • turbostress This tool generates load and outputs computer power metrics for this load.

macOS

  • PowerHog A tool to monitor program resource usage and crowdsource the search for wasteful apps.

Web

  • Carbonalyser - TheShiftProject
  • Carbonara - Digital4Better A custom element displaying web navigation carbon footprint
  • Carbon Footprint of Sending Data An online calculator for estimating carbon emissions from network traffic, based on the Shift projects Lean ICT report.
  • CO2.js An npm module for accessing the green web API and estimating the carbon emissions from using digital services
  • EcoGrader.com An online website carbon estimator.
  • ecoIndex Estimates the carbon footprint of public websites and pages (in French)
  • ec0lint Static code analysis tool providing hints for reducing the carbon footprint of websites.
  • EcoMeter.org Analyse the website ecodesign maturity.
  • Fruggr Evaluate the environmental and social efficiency of web and mobile applications.
  • Globemallow.io Sustainable web development + design best practice reports. Analytics & Ad Blocker reduces the energy required for page load and protects your privacy.
  • GreenFrame.io Calculate Carbon Footprint of website.
  • Greenspector A set of tools to run measurements on real devices and assess the environmental impacts.
  • Kastor.green Evaluate the design compliance of websites and web applications.
  • Website Carbon Calculator An online website carbon estimator.
  • WeDeex - Chrome
  • WeDeex - Edge
  • Beacon Calculate the environmental impact of a web page.

Windows

Organizations

Courses

Articles / Books / Research

Articles

Books

Research

Artificial Intelligence

Blockchain

Computation

Crypto

Data Centers

Emissions

Methodologies

Programming Languages

Testing of Green Software

Quantum Computing

Streaming

Web

Contribute

Contributions welcome! Read the contribution guidelines first.