PlantPal
PlantPal is designed to be a simple and accessible way to save water while gardening. PlantPal aims to bring premium gardening features such live growing conditions to any and every gardener. We take into account the precipitation, evapotranspiration, temperature, and plant species in order to calculate the water requirement for each plant in the user's garden. In doing this, we endeavour to support sustainable gardening practices.
Technologies
Frontend
The frontend of PlantPal is built for an iOS environment.
PlantPal features a simple, clean, and efficient user interface. We prioritised creating a functional app over having a polished Figma prototype.
We chose to implement it utilising the SwiftUI framework, rather than UIKit due to the declarative syntax, meaning making a responsive and aesthetic homepage was much simpler in our limited timeframe.
During the project, we learned how to work with SwiftUI's new navigation stack while implementing object orientated design strategies.
The user's garden and statistics are currently stored locally, and interact with the PlantPal API in order to provide instructions and statistics.
Backend
PlantPal is built utilising the Java Spring Boot framework. We have a created a custom PlantPal API that allows us to access our water-reduction algorithm and generative AI elements seamlessly, with a call being as simple as
localhost:8080/requiredWater/baseWater=5000&latitude=-37.9023&longitude=145.0173
In a non-hackathon situation, this API would not be run locally, but instead be connected to an online server.
In future, a simple feature to add would be the connection of a new database, through the integration of a technology like Supabase to our custom API, so that users could sync their gardens across multiple devices.
Our API consist of two main endpoints, which the first of which utilises a custom water-reduction algorithm which takes into account the users location and plant type, so we can analyse recent (and upcoming!) statistics such as recent (and upcoming!) rainfall and temperature so the user can best utilise their water resources. Another endpoint is our ChatGPT integration, which allows the user to gain tailored tips and guidance for their particular plant in their specific garden location to make sure it's kept as healthy as possible - all while being sustainable.
Log in or sign up for Devpost to join the conversation.