ahoicloud / co2
基于可持续网络设计 (SWD) 模型的 Laravel 计算二氧化碳排放的包
v1.0.2
2023-02-04 11:56 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^9.0
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^6.0
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^7.0
- pestphp/pest: ^1.21
- pestphp/pest-plugin-laravel: ^1.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-09-09 03:54:50 UTC
README
上传或下载的每一字节数据都会产生二氧化碳。通过计算这些排放量,开发者可以让自己和用户能够做出更高效、更低碳的决定。以下是一些示例:
- 为您的网站创建碳预算
- 当用户上传或下载高碳密集型文件时通知用户
该包使用 可持续网络设计 (SWD) 模型。年电网平均强度数据来自 Ember,以及来自 UNFCCC(联合国气候变化框架公约)的边际强度数据。
该包是为 Laravel 构建的,并基于 绿色网络基金会 在 CO2.js 包中做出的出色工作。
安装
您可以通过 composer 安装此包
composer require ahoicloud/co2
可选
您可以使用以下命令发布配置文件:
php artisan vendor:publish --tag="co2-config"
这是发布配置文件的内容
return [ 'KWH_PER_GB' => 0.81, 'END_USER_DEVICE_ENERGY' => 0.52, 'NETWORK_ENERGY' => 0.14, 'DATACENTER_ENERGY' => 0.15, 'PRODUCTION_ENERGY' => 0.19, 'GLOBAL_GRID_INTENSITY' => 442, 'RENEWABLES_GRID_INTENSITY' => 50, 'FIRST_TIME_VIEWING_PERCENTAGE' => 0.75, 'RETURNING_VISITOR_PERCENTAGE' => 0.25, 'PERCENTAGE_OF_DATA_LOADED_ON_SUBSEQUENT_LOAD' => 0.02, ];
使用方法
每个对应系统组件的总能耗,以千瓦时为单位
$co2 = new Ahoicloud\Co2(); echo $co2->energyPerByteByComponent($byte);
或作为外观
use Ahoicloud\Co2\Facades\Co2; echo Co2::energyPerByteByComponent($byte);
每个组件的二氧化碳数据
$co2 = new Ahoicloud\Co2(); echo $co2->co2byComponent($byte);
或作为外观
use Ahoicloud\Co2\Facades\Co2; echo Co2::co2byComponent($byte);
每个组件的二氧化碳数据
$co2 = new Ahoicloud\Co2(); echo $co2->perByte($byte);
或作为外观
use Ahoicloud\Co2\Facades\Co2; echo Co2::perByte($byte);
测试
composer test
变更日志
请参阅 CHANGELOG 了解最近更改的详细信息。
贡献
请参阅 CONTRIBUTING 了解详细信息。
安全漏洞
请参阅 我们的安全策略 了解如何报告安全漏洞。
鸣谢
许可
MIT 许可证 (MIT)。请参阅 许可文件 了解更多信息。
thegreenwebfoundation/co2.js 的代码采用 Apache 2.0 许可。(这是什么意思?)
Ember 的平均碳强度数据在创意共享署名相似许可 (CC BY-SA 4.0) 下发布。(这是什么意思?)
边际强度数据由绿色网络基金会发布,在创意共享署名相似许可 (CC BY-SA 4.0) 下发布。(这是什么意思?)
请参阅 LICENCE 了解更多信息。