Skip to content

Commit 777fb0a

Browse files
committed
Polish public portfolio docs
1 parent eb14ec3 commit 777fb0a

4 files changed

Lines changed: 113 additions & 1 deletion

File tree

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2525
- Scope 3 purchase-ledger example CSV for quick manual testing.
2626
- GitHub Actions workflow that runs the pytest suite on pushes to `main` and pull requests.
2727
- Git attributes file to keep text file line endings predictable across Windows and Linux CI.
28+
- Reviewer-facing portfolio summary in `docs/portfolio-summary.md`.
29+
- README badges, preview section, and reviewer start guide.
2830

2931
### Changed
3032
- Softened documentation claims in `README.md` to clarify prototype status and avoid unsupported certainty.
@@ -34,3 +36,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
3436
- Tightened README language around framework alignment, factor-library completeness, and formal reporting limitations.
3537
- Added a faster reviewer-oriented README path with quick-start commands and example-data notes.
3638
- Clarified Scope 3 upload messaging so unmapped categories are not implied to be successfully mapped.
39+
40+
### Release Checklist
41+
- [ ] Confirm GitHub Actions test workflow passes on `main`.
42+
- [ ] Confirm README preview image renders on GitHub.
43+
- [ ] Publish GitHub release `v0.1.0-carbonaware-mvp`.
44+
- [ ] Use release title `CarbonAware MVP v0.1.0`.
45+
- [ ] Include release notes: Initial public MVP release featuring Scope 1, Scope 2, and educational spend-based Scope 3 screening workflows.

README.md

Lines changed: 50 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
# Framework-Aligned Emissions Calculator (CarbonAware MVP)
22

3-
A lightweight, testable, local-first greenhouse gas (GHG) accounting tool built to convert facility operational activity data into estimated metric tons of carbon dioxide equivalent ($CO_2e$).
3+
![Tests](https://github.com/coreytshaffer/framework-aligned-emissions-calculator/actions/workflows/tests.yml/badge.svg)
4+
![Python](https://img.shields.io/badge/python-3.9%2B-blue)
5+
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
6+
![Status](https://img.shields.io/badge/status-MVP-green)
7+
8+
A local-first greenhouse gas emissions calculator that turns facility activity data into transparent Scope 1, Scope 2, and educational Scope 3 screening estimates.
49

510
This prototype is designed around the **Greenhouse Gas Protocol Corporate Accounting and Reporting Standard** boundary concepts, separating direct operational emissions (Scope 1), indirect purchased-energy emissions (Scope 2), and an educational spend-based Scope 3 screening workflow. It is not a compliance or certification system.
611

@@ -13,6 +18,46 @@ This prototype is designed around the **Greenhouse Gas Protocol Corporate Accoun
1318
---
1419

1520
## 📖 Table of Contents
21+
1. [Preview](#-preview)
22+
2. [Reviewer Start Here](#-reviewer-start-here)
23+
3. [Core Features](#-core-features)
24+
4. [Accounting Framework & Methodology](#-accounting-framework--methodology)
25+
5. [Project Directory Architecture](#-project-directory-architecture)
26+
6. [Quick Start](#-quick-start)
27+
7. [Installation & Setup Guide](#-installation--setup-guide)
28+
8. [Running the Application](#-running-the-application)
29+
9. [Executing the Test Suite](#-executing-the-test-suite)
30+
10. [Example Data](#-example-data)
31+
11. [Operational Assumptions & Boundaries](#-operational-assumptions--boundaries)
32+
12. [Emission Factors Reference Guide](#-emission-factors-reference-guide)
33+
13. [Future Roadmap & Architectural Enhancements](#-future-roadmap--architectural-enhancements)
34+
35+
---
36+
37+
## 🖼️ Preview
38+
39+
![CarbonAware MVP dashboard preview](docs/images/dashboard-preview.png)
40+
41+
---
42+
43+
## 🔎 Reviewer Start Here
44+
45+
If you are reviewing this repository quickly:
46+
47+
1. Read the mandatory disclaimer above.
48+
2. Review `data/emission_factors.json` and `data/scope3_supply_chain_factors.json`.
49+
3. Inspect `src/emissions_calculator/calculator.py` for Scope 1/2 logic.
50+
4. Inspect `src/emissions_calculator/scope3_calculator.py` for Scope 3 spend-based screening.
51+
5. Run `python -m pytest tests/ -q`.
52+
6. Launch the Streamlit app with `python -m streamlit run app.py`.
53+
7. Test `examples/sample_facility_inputs.csv`.
54+
8. Test `examples/sample_scope3_purchases.csv`.
55+
56+
For a concise portfolio explanation, see `docs/portfolio-summary.md`.
57+
58+
---
59+
60+
## 📖 Detailed Table of Contents
1661
1. [Core Features](#-core-features)
1762
2. [Accounting Framework & Methodology](#-accounting-framework--methodology)
1863
3. [Project Directory Architecture](#-project-directory-architecture)
@@ -65,6 +110,10 @@ framework-aligned-emissions-calculator/
65110
├── data/
66111
│ ├── emission_factors.json # Local database of Scope 1/2 conversion factors and citations
67112
│ └── scope3_supply_chain_factors.json # Small educational subset of EPA Supply Chain v1.2 factors
113+
├── docs/
114+
│ ├── portfolio-summary.md # Reviewer-oriented project summary
115+
│ └── images/
116+
│ └── dashboard-preview.png # README dashboard preview image
68117
├── src/
69118
│ └── emissions_calculator/
70119
│ ├── __init__.py # Package interfaces exposure

docs/images/dashboard-preview.png

68.2 KB
Loading

docs/portfolio-summary.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# CarbonAware MVP Portfolio Summary
2+
3+
## What This Project Does
4+
5+
CarbonAware is a local-first greenhouse gas emissions calculator that converts facility activity data into estimated metric tons of carbon dioxide equivalent (CO2e).
6+
7+
It currently supports:
8+
9+
- Scope 1 stationary combustion examples: natural gas and diesel fuel.
10+
- Scope 2 purchased electricity using a generic national grid-average factor.
11+
- Scope 3 Category 1 purchased goods and services using an educational spend-based screening workflow.
12+
13+
## Why The Scope Boundaries Matter
14+
15+
Scope separation is the core accounting concept this project demonstrates.
16+
17+
- Scope 1 tracks direct emissions from sources owned or controlled by the facility.
18+
- Scope 2 tracks indirect emissions from purchased energy.
19+
- Scope 3 tracks value-chain activities outside direct operations, such as supplier purchases.
20+
21+
Keeping these categories separate prevents misleading totals and makes the assumptions behind each estimate easier to inspect.
22+
23+
## Production-Like Parts
24+
25+
- Calculation logic is separated from the Streamlit interface.
26+
- Emission factors live in JSON data files instead of being hardcoded into UI controls.
27+
- Exports include factor provenance fields such as source name, factor value, factor year, and factor file.
28+
- Pytest tests cover core math, scope categorization, factor loading, negative inputs, missing factors, and Scope 3 mapping behavior.
29+
- GitHub Actions runs the test suite on pushes and pull requests.
30+
31+
## Educational Or Simplified Parts
32+
33+
- The tool is not a certified greenhouse gas inventory system.
34+
- Scope 2 uses a generic electricity factor rather than regional eGRID subregions.
35+
- Scope 3 uses a small educational subset of EPA supply-chain factors, not the full factor library.
36+
- Spend-based Scope 3 estimates are screening estimates, not supplier-specific primary-data accounting.
37+
- Market-based Scope 2 accounting, renewable energy certificates, and formal inventory management workflows are out of scope for this MVP.
38+
39+
## What Reviewers Should Inspect First
40+
41+
1. `README.md` for the project purpose, disclaimer, setup, and limitations.
42+
2. `src/emissions_calculator/calculator.py` for Scope 1 and Scope 2 calculation logic.
43+
3. `src/emissions_calculator/scope3_calculator.py` for spend-based Scope 3 logic and unmapped-spend warnings.
44+
4. `data/emission_factors.json` and `data/scope3_supply_chain_factors.json` for factor metadata.
45+
5. `tests/` for automated verification.
46+
6. `examples/` for CSV input formats.
47+
48+
## Suggested Release Title
49+
50+
CarbonAware MVP v0.1.0
51+
52+
## Suggested Release Notes
53+
54+
Initial public MVP release featuring Scope 1, Scope 2, and educational spend-based Scope 3 screening workflows with provenance-friendly factor metadata, CSV exports, pytest coverage, and GitHub Actions CI.

0 commit comments

Comments
 (0)