Inspiration
I'm an enthusiastic friend of nature and its green members, that's why I decorated my room with a lot of new plants a few years ago. As I came into software development, specifically iOS app development, I shipped over 20 apps the last years, and now I wanted to make my own Plant app!
What it does
First, it has a great design, which inspiration I got from Googles Stitch, and refined it to look even better. In its core, it identifies plants using one of openAIs models. Beside that, it uses Apple Intelligence to provide personal information, such as a weather-based Gardening Tip for the user's plants. Additionally, it lets you Explore over 800 plants offline, Build your digital garden, detect Health issues and providing solutions using the plant doctor, or providing Care Tasks for your green friends.
How we built it
I built it by myself, and by using new technologies, like Google stitch for a design concept, Gemini Pro for swiftUI views, Jules for Coding tasks, and Apples Image Playground for cute Plant Genmoji images. Using the latest Xcode 27 beta, I've already achieved new things, like the extra large portrait widget, which can show extensive details, like Weather, a Gardening tip, and the 4 latest Care Tasks, all on your Homescreen! However, to ship the app, I used the Xcode 26 version.
Challenges we ran into
My initial goal was to use Apple Intelligence to run the entire app. Quickly, I had to find, that this was a heavy task, to even impossible. Using Foundation Models alongside the Generables() is great for doing quick, high-frequency (recurring) tasks, such as showing the gardening tip or the plant doctor. But for Plant identification, it is quite un-preciese, while openAIs models excel at this task. I tried some Huggingface models and wrapped them to CoreML models, but they underperformed. Training a model myself, would take too much time and effort, so I had to rely on the accuracy of openAIs 4o-mini, while not costing too much. Also, I wanted to use the ImageCreator API, that Apple provides for generating Images programatically (I wanted to create a cute mascot for each plant that the user scanned), but this API is deprecated sadly.
Accomplishments that we're proud of
I'm proud of the great functionality and design, because the app uses a lot of details such as MeshGradient, introduced in iOS 18, or the Indexing of the Offline Plant database in Spotlight search. It was very satisfying to see how Foundation Models work which Generables , completely offline, and it works perfectly fine.
What we learned
I've learned, once again, that coding agents , like Jules, are great for speeding up the coding process, especially for default tasks, but that the true coding experience (what differs a software engineer from others), is in writing actual code (to think about, how to solve a specific problem, a smart way, using your knowledge). So, when Using coding-agents, it's best to do some things by hand and letting other things do the agent. An experienced engineer knows, when to use what. I've also learned that it is very important to give the agent clear instructions (for example, when I have a file named Onboarding.swift and one named Onboarding1.swift, I have to be exact about the correct file), because else, I may loose a lot of time unnecessarily.
What's next for Plant Identifier - FloraScan+
Currently, Im waiting for app review, and after Sep 9, when Xcode 27 RC is out, I want to publish an iOS 27 version of the app, including the extra large portrait widget, and some other details. I also aim to start with search Ads in the US.
Log in or sign up for Devpost to join the conversation.