Inspiration
Many things are taken for granted because sometimes we are so used to its existence. That one thing includes trees. Sometimes we see so much of it, we may not always experience bereavement when we see a tree get cut down. The thing is, our world is dependent on trees because they are crucial to the sustainability of our ecosystems. Sadly, with the need to use paper and wood increasing, deforestation just doesn’t seem to stop.
However, there is always a solution! With the bright and creative minds of the Yung Incorporation, our team has designed a lovely application that can be used to save our world. Our app encourages users to plant trees or sponsor others to plant trees.
Our inspiration mainly comes from seeing laborers plant trees. We decided to give them a helping hand by involving everyone in this activity. We are the natural guardians of the world.
What it does
Users can sign up and create an account or login with an existing account. They then can either request trees, which costs 10 GeoCoins or you can plant someone else's request which costs 5 GeoCoins. You will also be able to buy GeoCoins using real currency, so you can essentially gain money from GeoTree. Other requesters can then be able to request it across the world and affect the world around us worldwide with new trees. There will also be a leaderboard which displays the top 5 planters in the whole world.
How we built it / Code explanation
Building the project was a challenge because we were beginners and just started learning Android Studio about a week ago. We were also using API such as Maps API and Path API. In the end, we were able to get it to work and after countless debugging, the map was able to form. We built our program using Java’s OOP where we created a class for every object that is displayed on the map. One object is a user, the user class is stored with each login and is used to keep track of every user’s trees requested and trees planted. Another object includes stations, where the user would go to pick up a tree. Lastly, the other objects include the leaderboard and trees. The leaderboard has a list of users that are sorted. A tree has a requester, a planter, and a position.
Along with our use of OOP, we used Firebase to authorize logging in and signing up into different accounts. This was also a novel concept to us and was also hard to implement.
Challenges we ran into
One major challenge that we had to face throughout the course of this project was our inexperience with Android Studio. Another challenge that we had to face is the inexperience with Maps and Path API. We just started using it in this hackathon and we had trouble at first creating the map fragment. We had not had any previous experience with this software or API, and at times found it a little confusing. There were numerous features of the app that we had little knowledge of, so putting everything together was full of perseverance and exploration.
A different type of challenge we faced during this project was merging all of our work. This process took a long time, as many people in our group were new to github as well, and were not seasoned in pushing and pulling repos.
Accomplishments that we're proud of
We are proud that we were able to even finish the project and create it under the deadline. We just started learning Android Studio last week, and this was the first time ever using Google Maps API and Paths API. However, we were still able to finish on time and implement all the features that we wanted on the app.
What we learned
Using dataset and APIs, we had a huge grasp of how people interact with each other using the network that we have. Our app features the ability to plant other user’s trees. We learned the art of having users login by using the Fireside Database, and also learned how to use the Google Maps API to provide an understanding of how users interact with our app to plant trees.
In addition to that, our app is also a product that aims to maintain ecological balance. We love our world and want our planet to stay healthy. With that in mind, we created an app that revolves around planting trees. Trees are essential to the natural environment and we want to preserve its beauty with our app that encourages everyone to interact with each other and plant trees around the world.
What's next for GeoTree
In the future, I will implement real money transactions and verification if a tree is actually planted in a request location. For the verification, we will have users take a picture of the tree they just planted and upload it into our app. They, we will implement some way of checking if it's a tree and if it's the correct location on the map. If the app gains influence, we can also create station accounts where we have real stations that are able to log the trees going in and out of it. Thus, people will have a higher incentive to plant the tree because they will not need to go buy a tree themselves but instead go to a station and pick one up.
Log in or sign up for Devpost to join the conversation.