Ecolution

Rationale/Motivation

In recent weeks there has been a noticeable surge of discussion and debate regarding climate change. This gain in momentum has led to a drastic increase in the political pressure the topic exerts, with more and more high level public figures being requisite to acknowledge the issue. As a group, we felt compelled to contribute to this increase in traction in the best way we know.... by coding! Land pollution has a strong correlation with greenhouse gas concentrations and also decreases the overall trust within society. For those reasons we wanted to create a platform where environmentally conscious people could convene and communicate to help decontaminate the communities they are a part of, and turn their passion for the environment into action. From there, Ecolution was born.

What does it do?

Ecolution is a mobile app built with React Native, compatible with both iOS and Android devices. Users create an account by using their email and setting a password. Users are then presented with a feed of posts from nearby users and a map, featuring red dots of varying sizes, relating to the severity of the visual pollution in those areas. The app can access the users position in the map, as well as gain access to the camera of whatever mobile device they are using (with the permission of the user of course). Users can then use this to take pictures and report contaminated areas, using their location as the coordinates of where the pollution can be found, adding another red dot, or increasing the severity of a current one. In addition, users can turn their reports into facebook posts directly from the app, in order to convince their friends and family to be more aware of the issue through some real-time data visualization, and perhaps even motivating them to download the app. Other users will then see these red dots, use the maps to navigate to the source of the pollution, and organize to clean it together.

How we built it

This app was predominantly created using React-Native and Firebase. The frontend was done with React, used a variety of APIs to implement a mobile application, with several different interfaces/tabs. We used facebook's sharing API to create public posts with information from the app. The backend was handled with Firebase and React-Native. Firebase is a non-relational database system, that was used to dynamically store data regarding events on the map, such as the afformentioned red dots.

Challenges we ran into

The most challenging issue we had was learning React-Native, JavaScript, and Firebase basically from scratch. We were also unable to implement a few features like event creation because there were no suitable API for the job.

What we learned?

Despite the many hackathons the team had been a part of, we agreed that this was the one in which we learned the most. Most of us had very little experience with Javascript, and all of us were unfamiliar with Firebase and React-Native. This led to an intense but rewarding learning curve, where we eventually developed the competency to build a fully integrated app using tools that were previously foreign to us. Additionally we all developed our knowledge in API and SDK manipulation in order to get a lot of the functionality of the app going.

What is next for Ecolution

As is the case in most hackathon projects, our product is far from polished or fully realized. We definitely achieved the more realistic goals a 36-hour timeframe would allow, and we are very happy with the outcome, but that doesn't mean it is finished. Now that we are much more proficient with React and Firebase, we would definitely try and develop the app further by adding more functionalities such as building a community within the app, use badges as a reward system, and many more. We also thought the idea of some sort of AI implementation could calculate the efforts of that person by comparing the 'before' and 'after' photo would be cool. But for now, all that's left to do is #JoinTheEcolution.

Share this project:

Updates