Please sign in to access this page
A modular, professional-grade application for crop tracking and farm management
No followers yet
Once you ship this you can't edit the description of the project, but you'll be able to add more devlogs and re-ship it as you add new features!
It's been almost exactly a week since my first devlog about Canari.
After doing more talking with Agricultural experts, it seems that maybe not everybody has an iOS device (shocker). I needed to add another way to access the application as well, because I don't want to release it on the App Store prematurely for iOS either.
I settled on doing a Vite + React web app hosted on firebase, which is actually way easier than I expected. Integrating that web app took like 13 hours still yesterday, but a lot of that was reading documentation. I also duplicated my database and made it into a public demo that I can share with you guys, which is a huge bonus. I can finally ship. I'm going to start shipping after posting this devlog, but in the meantime, you can still use the application.
Using the demo:
no login is needed for the demo, please don't grief it lol. I have very very basic security that basically only protects the file paths and not the documents so technically if you somehow got the api key you could just wipe it out. Good luck doing that, if you do wipe it lmk so I can fix the security error. Matter of fact, I encourage you to try to wipe it. Go for it.
Got off on a tangent there, but basically you can go through and simulate submitting a report for apple harvest maturity data. You can view the maturity data reports and filter them and stuff which is cool. You can also submit count reports (this is done when you want to extrapolate data and determine the average amount of fruit you will get from an orchard, which is really great for cost/production/profit calculations.
Anyways, I've gone on for long enough. Have fun messing around with it, and I'll see you on the ship side.
Never done a devlog before, but here goes.
I'm a 17 year old from Eastern Washington State, where the majority of our economy and jobs come from apple and potato growing. My app seeks to smooth out a lot of issues that decrease agricultural efficiency and hopefully help eliminate some of the 20% of food that is destroyed by pests and disease annually in the United States.
Canari is an enterprise-grade software currently in development for farming applications and complex tracking. Or at least, it will be soon. I began Canari over a year ago, at the start of last summer, but I didn't find out about this program until yesterday. I'll briefly go over what the app does, the app timeline so far, and then I'll dive into some technical details.
The point of Canari is this: farming practices are outdated when it comes to data collection. Tracking crucial issues around farming takes way too much time, and problems spread, making maintaining a farm a constant game of wack-a-mole.
That's where Canari steps in. Any organization using Canari can sync up users, generate geolocated reports with their user information and a location pinpoint accurate within 8 feet, and view other reports throughout their organization. These reports are modular, and can be used for a variety of applications. Currently, with the farm I'm testing at, I'm handling reports for fruit maturity data collection, where people check fruit size, starch, weight, color, etc and graph it over time to extrapolate and find out when they should pick to hit their targets. Canari will also handle apple counts data collection, where a farm can count the average # of fruit on a tree and then extrapolate that to see how profitable a harvest will be for that block of fruit. Soon, Canari will also have its old capabilities regarding pest and disease map-based tracking back for managing potential catastrophic issues without having to play telephone
May 2024: Canari project is started as a personal project while learning Swift through Xcode
August 2024: I saved up and bought a MacBook so I could continue to develop Canari at home, with hopes of being able to demo it at a farm in the next year.
October 2024: I'm swamped with school as a full IB student, and I stop working on Canari for a time.
November 2024: My computer science teacher encourages me to enter the Congressional App Challenge even though the application isn't even near ready for it. I grind for 3 days and submit it 2 hours before the application is due.
After not expecting to hear back, I got a phone call from the local Congressman letting me know that I had won my district in the CAC and I was invited to D.C for the conferences and banquet for the winners.
Sometime in the spring I decided that Canari could be much more than what I was pitching it as, and I started rebuilding it from the ground up to be much more functional.
Now, I'm interning at an orchard management company for the summer doing administrative work, and Canari is going to be tested at the farming operation in the next few weeks. I'm super excited to see my software getting deployed, and I've come a long ways from the first beta when I had no idea how to code in Swift.
Now, for the more technical things.
Yes, the app was built in Swift UI, it is NOT for android (yet). Hopefully android will be out sometime in the near future, but I have NO idea how to program for android devices.
The app uses Firestore, google's free-tier database and auth service. I would 100% recommend it to anybody trying to make a Swift app that uses connectivity. It's super convenient, free (for all normal purposes) and way better than Backblaze, which was the other free tool that I spent weeks trying to troubleshoot. The security functions are also great, I don't want another Tea app leak on my hands.
The project has several thousand lines of code at this point, but a lot of it is currently useless as I've refined the application and eliminated the need for a lot of views that are still kind of hanging around in the code.
Canari is practically ready for testing, hence why I'm not gonna be logging a huge amount of hours for this project in the coming weeks. Most of my work right now is going into provisioning company iPhones and getting accounts created for the Ag workers that will be using it.
A lot of stuff in this app is loaded dynamically from Firebase, like the list of tree varieties to choose from, the reports that have been filed previously, etc.
Yes, I know its goofy that I'm using the apple logo, but honestly I don't want to make assets myself in illustrator right now.
That's basically it for now, I'll come back with an update when testing starts. Here is one of the reporting views from the app, where users can report harvest maturity data (they do this by measuring for 10 apples and finding the mean values, hence why there are 10 to select)