Socket
Socket
Sign inDemoInstall

bytes-to-co2

Package Overview
Dependencies
Maintainers
0
Versions
66
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

bytes-to-co2

Javascript module that calculates the co2 generated in transfer x amount of bytes over the network and the country.


Version published
Maintainers
0
Created
Source

bytes-to-co2

npm bundlephobia-min bundlephobia-min-gzip bundlephobia-tree-shaking

Calculate the co2 footprint (carbon dioxide released to the atmosphere) of transmitting an x amount of bytes over the internet.

Transport data over the internet requires energy (datacenters, repeaters, switches, etc) and how this energy is different from country to country. This is known as the "co2 emission intensity". Each country have different ways to produce electricity (solar, wind, coal, diesel, nuclear, etc) and each one of these releases to the atmosphere a different amount of Carbon Dioxide (co2), therefore transmit x amount of data will release a y amount of co2.

This module gets the information from Electricity Maps through the co2-data library. I downloaded the results every hour for 1 day and averaged them by country.

Usage

Install the package using yarn add bytes-to-co2 or npm install bytes-to-co2

Import the library and call the function as shown:

import { bytesToCo2 } from "bytes-to-co2";

const uk = bytesToCo2({ byteSize: 1000000, country: 'GB' }); // 0.35021555843286817
const sweden = bytesToCo2({ byteSize: 1000000, country: 'SE' }); // 0.06411629304105701
const spain = bytesToCo2({ byteSize: 1000000, country: 'ES' }); // 0.4461472854018211
const world = bytesToCo2({ byteSize: 1000000, country: 'ZZ' }); // 0.539680558728753

Contributing

If anything in the way I'm calculating the footprint looks odd to you, please feel free to open an issue or PR. Any feedback or improvements in the way the co2 is calculated is welcomed.

Special thanks

  • Wholegrain Digital: They were very helpful explaining to me how the carbon calculation is made.
  • Electricity Map: They were very kind in allowing me to use their data for this library. Without them I would still be using very outdated data.

Keywords

FAQs

Package last updated on 08 Jul 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc