Skip to content

pazbardanl/green-github-docs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 

Repository files navigation

Green GitHub Concept

Back in 2021, Intel’s Software Engineering Organization formed a dedicated team to lead green software research and initiatives, with the goal of driving sustainable practices across the company. Although the team was disbanded, the three of us who remained — a couple of rockstar developers and a UX Unicorn — continued to champion green software as a passion project.

One of the projects we pursued involved calculating the carbon footprint of CICD pipelines and estimating the energy consumption of different parts of the software stack.

In today’s eco-conscious world, we believe that integrating sustainability into software development isn’t just a nice-to-have it’s essential. Our mission is to help software developers minimize their carbon footprint while optimizing their processes. Together, we brainstormed, created a list of ideas, and brought them to life through a video demo showing what GitHub could look like with green features and capabilities.

Tristin Oldani | LinkedIn

Paz Barda | LinkedIn

Akshaya Jagannadharao | LinkedIn


Watch the demo video below:

Watch the video

Feature Concepts

1. Carbon Usage Badges in READMEs

Overview: We propose adding badges to project READMEs that display estimated carbon usage, as calculated by GitHub. These badges will provide visibility into the environmental impact of the repository, encouraging developers to be mindful of their code’s energy consumption.

Benefit: This initiative increases awareness and promotes environmentally responsible coding practices among developers.

a screenshot of a github readme with pops of green highlights and a badge at the top that shows the total carbon saved as 900g CO2-eg

Pops of green highlights and a carbon badge indicate this repo has enabled the green features within GitHub

2. Displaying Green Insights on Homepage

Overview: Continuing the bring awareness providing an option to display the carbon impacts and any savings repositories gain from CodeRecylcing.

Benefit: This initiative continues to increase awareness and promotes environmentally responsible coding practices among developers.

a screenshot of a github readme with the edit repo details popup. selecting "carbon impact" to be included on the homepage of the repository. then displayed on the homepage the carbon impact metrics are displayed

Providing a way for users to select to highlight and add their carbon impact to their repository homepage

3. Carbon Usage Insights Tab

Overview: Introducing a dedicated “Carbon Usage” tab in GitHub Insights will allow users to track and visualize the carbon emissions associated with various activities, such as code commits, CI/CD pipelines, and deployments.

Benefit: By providing detailed data on carbon usage, teams can make informed decisions to optimize their workflows for reduced energy consumption.

4. Carbon Savings from Code Reuse

Overview: This feature will estimate the carbon savings achieved by reusing existing code/3rd party libraries instead of developing new solutions from scratch. It will highlight the positive environmental impact of leveraging open-source libraries and shared code.

Benefit: Encouraging code reuse not only boosts development efficiency but also significantly reduces carbon emissions.

a screenshot of a github repo insights page with a new tab, carbon impact that displays the CI-CD usage, deployments, and github pages usages over time and the bottom displaying the code that was recycled or other repos utilizin the code as part of their savings

Adding a "Carbon Impact" tab to the Insights section of GitHub allows for the traceabilty of the impact of various parts of the repo along with the savings of recycled code.


Technical

Serverless infrastructure:

Leveraging GitHub app for deep integration with GitHub:

  • Create and update widgets (visualziations)
  • GitHub GraphQL API for dependencies between repositories (for CodeReCycles)

EcoCI for Energy consumption and Carbon emissions calculation:

Leverage EcoCI capabilities, integrated in user workflows

Architecture overview:

image

About

Green GitHub Documentation and References

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •