🌎 What is Garden Go? 🌎

Garden Go is a mobile app dedicated to inspiring more people to become gardeners, especially the younger generations, by gamifying the process. We hope to inspire others to grow sustainable futures and develop a thriving world.

Alt text

🚨 THE PROBLEM 🚨

Climate Change. This "upcoming" disaster threatens to bring about increases in natural disasters, destruction to natural ecosystems (killing off wildlife populations), and uncomfortably extreme temperatures to the the entire world. In reality, the disaster of climate change is already here!!! Temperatures have been rising drastically in recent years when we look at the trends as a whole. However, this is "only" a 1°C increase in our global average temperature. (This is actually a whole lot though!)

Alt text

Climate change is a "slow burn". Throughout most of the 20th century, climate change did not have any noticeable impact. However, now in 2023, many noticeable changes have taken root. Public awareness of the issue is growing, but its causes have become so deeply intertwined with our lives that its hard to "prevent". Looking at the forecasts, climate change is expected to get worse and worse and worse and worse. Eventually, natural disasters will happen so frequently that it is expected to cause $140 to $300 billion in worldwide damages by 2030 - and this number is projected to increase to $480 billion by 2050.

🌳 Our Solution, Goal, and App 🌳

The task of “solving” climate change presents itself as a daunting task to the everyday person who sees themselves as but an insignificant part of the world. The fact is, there is no solution that solves climate change just like that. Buuuuuuuuut there are gradual ways to reduce climate change and prevent its rise, and one such way, made possible by people all over the world, is gardening. Gardening is a way to make the Earth greener at no cost to the individual, instead granting many benefits such as a more enriched home and the production of healthy, cheap produce. Our app, GardenGO, is meant to help jumpstart people into gardening, along with providing tips towards taking care of certain plants and provide a better gardening experience. By gamifying the process, we hope to cultivate a stronger community of gardeners by sprinkling more fun into the gardening process (even though it already is fun).

🪴How does gardening contribute to sustainability?🪴

Just like trees, ordinary garden plants also absorb carbon dioxide and release oxygen. This helps mitigate the effects of climate change that are largely caused by greenhouse gasses.

Store bought foods create pollution through transportation and packaging. Growing your own fruit, vegetables, and herbs reduces the need to buy store bought. In addition, gardening promotes organic food, instead of eating pesticide laden fruits and vegetables.

Proper gardening enhances soil health, which is better at retaining water and reduces the need for irrigation. This helps manage water runoff and prevent soil erosion, preventing flooding and reducing water pollution.

Urban areas have heat islands, which can be shaded and cooled through the shade of trees and plants.

Replacing the classic green lawn reduces lawn maintenance (and the water bill!) which can be even better if replaced with plants native to your area.

🌱 The Inspiration 🌱

Climate change was already in our minds and in our lives this year. Our team of 5 are all from California: and climate change really roughed us up this year. The extreme weather became even more extreme - this recent summer was filled with heatwaves (often reaching 90°F on numerous days a week, and numerous weeks a month), yet it snowed in Southern California this winter. This year, it snowed not once, but twice: once in December, and one in March (happened near Disneyland!). California has received reports of snow throughout the years, but most of the time it would be too insignificant to be recorded or celebrated. The last officially recorded times takes us back to 1949!

Alt text

🎮 What our app does 🎮

We're making an educational app with daily and weekly missions to simulate a game. We created 5 main screens for our app:

The "Profile or Account" Page: This page is where we receive our mission prompts (daily and weekly) and get rewarded points for them when we complete it. The page also tells us when the user made their account, allows us to log out, and allows us to see how many points we have.

The "Home" Page: This page highlights a random plant every day - or you can choose what plant it highlights. The selected plant will be displayed with a picture, its name, and a variety of different facts about it (i.e. how to take care/raise one).

The "Collections/Database" Page: This page displays a list of all of our plants (users can scroll through) and allows them to select which plant they want to display on the home screen.

The "Search" Page: This page allows users to type and search for what plants we have available on our list at the moment.

The "About Us" Page: This page displays text about our origins, missions, and goals for our app.

🔨 How we built it 🔧

Our backend was created through the use of Python and subject-related API's that provided us access to databases from Pl@ntnet and Perenual. Additionally, we integrated a Flask backend dependent on Python while exposing the Python scripts on a Rest API and connected it to a React frontend. For the mobile application UI of GardenGO, we used an open-source platform named Expo Go, which has its set of tools and services built around React Native.

🛑 Challenges we ran into 🛑

Prior to this project, everyone in the group had little to no experience in the frontend and full-stack processes. As a result, there was a lot of documentation and errors that we had to parse through. Thus, our group of 5 people were often trying to explore on their own to learn React Native, Javascript, Python, and how it all blends together to create an application, so we were less collaborative than we would have liked. On top of that, there were some differences in how our code would blend with one another, as we approached coding in React in different ways, creating bugs that we had to troubleshoot.

🏡 Accomplishments that we're proud of 🏡

We worked really hard on navigation between different pages. We wanted it to feel smooth and less like pressing buttons to go between pages. Thus, we implemented a way that lets users swipe between pages freely. In addition, we made a navigation bar at the bottom that allows users to know which page they are on and where to go next.

💡 What we learned 💡

This Hackathon was the very first Hackathon for the majority of our group! We came into this project super ambitious and had a lot of fun because of that. We really liked trying to bounce ideas off of each other and getting to make what we wanted for our app. However, this ambition did result in a lot of scrapped ideas near the end, where we eventually decided to cut some content to ensure that our application ran smoothly.

🚧 What's next for Garden Go 🚧

We really want to expand on the "game" aspects of the application to really build a strong community of gardeners. We plan to incorporate a cosmetic shop to better reward users for the time they spent growing their plants. This would include customizable plant pots for our home screen plants and music within the application. Plus, we would like to add a "friend" system so users can see the progress and cosmetics of their friends. We also would like to expand some functionality of our app. One of our more ambitious ideas would be a "scanning" feature in our app. When users take a picture of their plant, our software would recognize the species and forward them information from the plant. In a similar vein, we would also like to expand the search bar - rather than having people know the species of their plant to find information, we would like to have ways to describe the shape, color, and other distinguishing features of the plant to search. Additionally, we plan to look more into cybersecurity and increase the security surrounding our app so we are less prone to cracking. The main struggle is incorporating a dynamism of elements that create a more free-flowing app that conforms to how the user would want.

🧑‍🎓 Links to our Research 🧑‍🎓

Thanks to the brilliant and kind people around the world, we were able to make use of their data and experiences. GardenGO wouldn't have been possible without these resources:

🏃‍♂️ How to Run 🏃‍♂️

-- We use npm, Flask, node.js, and a variety of react and expo dependencies.

----- node.js is installed on the web. Everything else we installed via the terminal using npm or pip.

----- The dependencies we used are listed under "dependencies" in the "package-lock" file and at the top of our App file.

----- We use images that were downloaded into our computer. Make sure you download them from the github (underneath the "img" folder) and the path is the same (we specify that they are all in the "img" folder, so make sure the files are placed under an "img" folder).

-- We use "npm start" in the terminal to give us a QR Code (if everything works)!

-- We downloaded Expo GO on our mobile devices and scanned the QR Code to access the application!

Thank you for stopping by! Have a great day!

Share this project:

Updates