Inspiration

It is more important now than ever that we take care of both ourselves and the world around us. The world climate is as fragile as it has ever been, and with recent events, it can be difficult to keep a check on the little world in our own heads. Many people are seriously struggling to tackle every day that comes. The earth itself is struggling, too.

Much care and attention needs to be shown in order to help push through these two ongoing crises. This is why we have built Cli-Mate!

What it does

Unsure if something is recyclable? Simply use the app to take a picture of the item, and the app will tell you which colour bin to put it in! Your item will be categorised, your local council guidelines will be checked, and Cli-Mate will tell you which bin is safe for your item. Cli-Mate will also check if your item can be dropped off at your local charity shop to help the local community and will provide you with details of your nearest shop - all as easy as snapping a picture!

You also have the option of upcycling your item. With one click, you will have access to many fun projects that use whatever you have taken a picture of - providing you with a fun activity while helping the earth to live a long and happy life.

Cli-Mate will also track steps! The more steps that are tracked, and the more waste items that you scan, the more healthy and happy your own little pet earth will become. The adorable little guy lives on your dashboard and will respond to your activity, becoming more green and friendly with every stage.

Our RSS tab will provide you with a fun mix of uplifting content and deep, thoughtful articles to get your spirits lifted and keep your mind educated on how to look after itself.

How we built it

Users can download the app that is written in Dart - we used a framework called Flutter that helps us keep it neat and tidy, as well as being able to reuse the same code on Android, iOS and even a WebApp if we so choose! It also uses Google Firebase for authentication as well as Google Firestore!

The Flutter application will talk to our API (written in Python using Flask) which will be able to handle all sorts of data requests. This API resides on a Google Cloud server.

The image recognition tool uses Google Cloud Vision. In just a few lines of code, we can create an incredibly streamlined pipeline from Flutter to Google Cloud Vision and back again, all within a very tight timeframe that the user will barely recognise has happened.

Challenges we ran into

We initially had issues setting up the Google Cloud Vision tools on our local development machines. This slowed down progress near the start of the project, but with a bit of tinkering and many (many!) StackOverflow searches, we were able to iron things out.

Handling many different API requests can be very difficult to keep on top of, especially as a lot of them depend on each other, a pen and whiteboard was ESSENTIAL for this project.

Accomplishments that we're proud of

We were very happy with our Vision integration. Our integration code is simple, straightforward, and sturdy - all the way from Flutter through to Cloud. That's also thanks to our silky smooth API. Our structure enables us to easily connect front end to back end with little effort which really helped when slotting in modules and passing our data around.

We are very happy that all our different smaller projects can communicate efficiently to each other!

We also love the design and feel of the app!

What we learned

We learned how to effectively create and use a Flask API! We also learned how to develop an App that can interact with many different services and APIs.

Thirdly, this was also our first time interacting with Google Cloud Vision. It was surprisingly easy and really empowered us at the start of the project.

Also, RSS feeds are more simple than we thought! Half of us didn't even know what they were, and those two people wrote all the code for that part of the project, so it's safe to say a lot was learned. That RSS data was also converted to JSON with a custom object, which provided us with a lo of fun/frustration.

What's next for Cli-Mate

We would love to build a centralised database of all the bin types along with their respective colours for each council area in the UK. This would increase our supported areas and enable more people to get recycling! Sadly we didn't have enough time to collate all of this data. We would've also loved to have been able to get the locations of all the drop off bins for donated clothing - especially as this is a zero-contact solution for donating to charity.

One area of the application that we weren't able to expand more into is the exercise area. As of current release, the app will track steps. Our vision was to give suggested workouts and fitness goals to the user, as it is widely known that this contributes dramatically to mental health. We would have loved to include some dietary component to the app as well, perhaps a nutrients tracker so that users can make sure they aren't getting too little or too many of what they need every day. We could offer in-app rewards for reaching your 5-a-day, even offering more valuable rewards if you can keep up a streak.

One final improvement that we had in mind is that the user would be able to scan their item and we would be able to calculate approximately how local the produce would have been grown. This would incentivise the user to buy food that is more local, therefore cutting down on the fossil fuels used to transport their food around the world.

Conclusion

We have thoroughly enjoyed working on this project and we hope you have enjoyed reading about it! Even being able to put our time and effort into a cause like this helps us feel more motivated and like we are a force for good in the world. Thank you for this amazing opportunity. Happy hacking!

Built With

Share this project:

Updates