Inspiration

Because of Covid, the number of package deliveries has skyrocketed. However, all of these deliveries take a toll on the environment. Today, we need to be more conscious of our carbon footprint from all areas of our lives.

What it does

We built a tool that takes a Fedex tracking number and scrapes for useful information relevant to carbon emissions so that we can provide users with an accurate representation of how much carbon was emitted by their delivery.

How I built it

The backend is built in Python Flask, using Selenium to help scrape the data from Fedex. We also used Google Cloud for grabbing distance data. The front end is vanilla js, html, css with a few libraries that we used for animations.

Challenges I ran into

The biggest challenge was getting a hold of the shipment data. Fedex has an api, but we didn't have time to get approved. The website also loads really slowly and dynamically, so we weren't able to parse the website very easily. We settled on kind of a hacky solution by using Selenium to mock a web browser. That way we could wait 7-10 seconds and let the webpage load fully before grabbing the data.

Accomplishments that I'm proud of

Super proud of getting a working backend + frontend together in such a short time. We were able to divy the work up quite nicely.

What I learned

It was a lot of fun to work around the Fedex website. We were used to just being able to grab json data reallly quickly/easily and it was interesting to learn a hacky solution around that.

What's next for Emissions tracker for packages!

It would be great to integrate this into Amazon or UPS as well! Especially since everyone's ordering from Amazon these days.

Share this project:

Updates