Inspiration

While composting is highly encouraged at UVA, many students do not feel incentivized or do not have enough information about composting. Around 580 million metric tons of methane are emitted annually, and humans contribute to many emissions. Additionally, studies have shown that composting instead of trashing could decrement methane emissions by up to eighty-four percent. Why should we hover so seamlessly over such a significant topic? For this reason, we created “dirt”, a website that encourages students and faculty around campus to competitively compost to promote an eco-friendly environment and contribute to the ongoing issue of atmospheric pollution.

The Concept

When students walk up to a compost bin, they should notice a QR code that redirects them to our website using their phone’s Camera app. Using our website, users can log in with their Google account, take a picture of the item they want to know is compostable or not, and dispose of the item properly to promote a healthy and clean environment. Specifically, our website provides information about the item’s compostability, why it is compostable/non-compostable, and special steps to compost the item (if necessary). Users who scan compostable items are awarded one point, contributing to their rank on our global leaderboard. We chose this approach because it promotes a competitive environment that encourages healthy habits amongst college students and faculty. We want everyone to have a role in contributing to a pollutant-free world while also having fun.

Development Process

To develop our website, we utilized the Streamlit library for its simplicity in building interactive web applications with Python. We integrated Google OAuth for login authentication, allowing users to sign in using their Google accounts securely. For object recognition, we prompted Open AI’s ChatGPT-4o model to classify the objects on their compostability. The entire application was deployed on the web, making it accessible through QR codes attached to compost bins around campus. This decision was made to lower the implementation cost and reduce operating costs compared to using dedicated hardware. Using existing hardware also reduces the project's resource burden. We used the Leaflet library to visualize the locations of compost bins in and around campus. Additionally, we used Plotly and Pandas to visualize the data we collected in our MongoDB database. This includes the types of materials composted as well as the quantity of material composted. To make the leaderboard more visually appealing, we used matplotlib to create a gradient to show how well users did in their composting endeavors visually.

Challenges we ran into

One of the most significant challenges we encountered was learning new libraries and using a language in a new context. This allowed us to build on top of previous knowledge to create something that we would have previously not been capable of. Another challenge we ran into was incomplete or outdated documentation for libraries. This was frustrating, but it forced us to be tenacious in problem-solving and resourceful in discovering solutions. API keys also posed a consistent challenge for us. Though we had an idea of how to use our API keys to interface with different software, the behavior was often unexpected and required additional steps. Overall, the challenges we faced built our knowledge base and will continue to inform how we approach future challenges, likely with better judgment.

The Learning Experience

As a whole, we were delighted with our results. While there were many factors and features we did not have enough time to implement, our current project captures the infinite capabilities that a competitive composting environment has to contribute to the environment. As a team, we learned the fundamentals of Streamlit for the first time, integrating custom Python scripts utilizing the library to create a sleek website that is accessible to anyone interested in composting on Grounds. This was our first time building a website together, and it allowed us to learn the basics of web development while also utilizing our prior Python and conceptual algorithmic knowledge. We couldn’t be more proud of our accomplishments and look forward to expanding our skills in future work.

What's Next?

We plan to expand dirt by implementing socioeconomic factors to maintain user interest and provide additional incentives. For example, we could reward users with redeemable prizes after they accumulate a certain number of points. This motivates users to stay active on our website and collectively work towards fostering an environment without atmospheric pollution. We could also scale our website into a social media platform to further encourage user activity and promote a cleaner society. These implementations were quite large for the allocated time, but we firmly believe they would significantly enhance our website. All in all, these changes would allow for the ability of technology to motivate individuals to be used toward positive ends.

Built With

Share this project:

Updates