Digital Carbon Footprint Calculator
- 2 Devlogs
- 2 Total hours
This tracker allows one to estimate, visualize and caution carbon dioxide emissions resulting from daily digital activities.
This tracker allows one to estimate, visualize and caution carbon dioxide emissions resulting from daily digital activities.
Revamped the Digital Carbon Footprint Calculator from a flat, static two-panel layout into a dark dashboard-style UI: swapped light-blue panels for a navy/cyan theme, replaced plain number inputs with sliders for continuous values, and broke the results into collapsible sections (View Emission Factors, View Charts, See Tree Impact) instead of dumping everything at once. Added a transparent emissions-factor table so users can see exactly how their footprint is calculated, plus a “Tree Impact” card that translates the raw CO₂ figure into a relatable equivalent (trees needed per year to offset it) - turning the tool from a bare calculator into a clearer piece of climate communication.
I’d already built the core of EcoDigital Tracker before deciding to bring it into Stardance, so this session was about picking it back up and turning it into something actually shareable. It started as a desktop app built with Tkinter — you could enter your daily digital habits (emails, streaming, cloud storage, calls, browsing) and get back an estimated carbon footprint in grams of CO₂, along with a Normal/High/Severe status and a pie + bar chart breakdown. The problem was that it only ran on my machine — no link, no way for anyone else to try it without installing Python themselves.
So I rebuilt the UI in Streamlit, keeping the exact same layout, input fields, output format, and charts, just swapping the framework underneath so it could run in a browser instead of a native window. I also wrote a short README explaining what the tool does and why I built it: to show people how much carbon their everyday digital activity actually produces, and where it lands on the Normal/High/Severe scale.
From there I moved on to getting a real public link. I tried ngrok first to tunnel my local server, but the download got flagged by my antivirus, so I switched to deploying properly instead. I pushed the project to GitHub and connected it to Streamlit Community Cloud, then worked through a chain of deployment errors — a missing requirements.txt that meant matplotlib wasn’t installed on the server, a main file path pointing at a filename with no .py extension, and the old Tkinter file accidentally being the one that got deployed instead of the Streamlit version. Fixed each one by correcting the filenames and adding requirements.txt directly on GitHub.