This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass
What I Built
I built PlantLens AI, a privacy-focused, AI-powered botanical assistant. Users simply upload a photo of a plant or leaf, and the application provides an instant health assessment, identifies possible diseases or pests, and outlines practical care instructions (watering, sunlight, and origin data).
To meet the "Touch Grass" philosophy, the app is intentionally designed to make the screen the shortest part of the experience. Instead of keeping users trapped in an endless chatbot UI, the AI generates a single, specific outdoor action task (e.g., "Check the top two inches of soil for moisture" or "Inspect the underside of leaves for aphids"). Users are prompted to physically go outside, perform the task, and click a "✓ I Did It" button to celebrate spending time in the real world.
Demo
plantlensai.vercel.app
Code
PlantLens AI 🌿
Simple, AI-powered plant health assistant powered by Gemma open-weight vision models.
Spot leaf diseases early, get actionable organic care steps, and spend less time on screens caring for real plants.
📖 Table of Contents
- Problem
- Solution
- Why Gemma?
- Why Open-Weight AI?
- 🪴 Touch Grass Philosophy
- 📐 Architecture
- 🔒 Security & Privacy
- ⚙️ Setup & Installation
- 🧪 Testing & Verification
- 🚀 Future Improvements
🥀 Problem
Home gardeners, urban plant parents, and allotment growers often notice unhealthy foliage—wilting stems, powdery mildew, yellow chlorosis, or necrotic spots—but do not know:
- What the symptoms indicate.
- Whether the issue is fungal, pest-driven, or environmental.
- What concrete outdoor action to take next to save the plant.
Most existing garden apps lock users behind paywalls, aggressive paywalls, or endless screen interactions that disconnect them from their garden.
🪴 Solution
PlantLens AI provides instant botanical triage:
- A user uploads a photo of a plant or…
How I Built It
I built the application using Next.js, TypeScript, and Tailwind CSS for a clean, nature-inspired UI (utilizing Quicksand and Nunito fonts for an organic feel).
The core intelligence is powered by Google's open-weight Gemma Multimodal Vision model. I used the Google Antigravity IDE to orchestrate the prompt engineering and MVP generation. The application sends the uploaded image and a strict system prompt to Gemma via a server-side API proxy to keep credentials secure. Gemma is instructed to act as a botanical assessor and return a highly structured JSON object containing confidence levels, visible symptoms, and the personalized "Touch Grass" task, which Next.js then beautifully renders on the frontend.
Why Does Open Innovation Matter?
Open innovation is critical for an application like PlantLens AI. Using an open-weight model like Gemma provided several massive advantages over a closed API:
- Developer Control & Transparency: I could see exactly how the model behaved and enforce a strict JSON schema without unpredictable black-box changes breaking my application.
- Privacy by Design: Because it's open-weight, the foundation is laid for future local-edge inference (running directly on a user's device or home server), ensuring users don't have to send photos of their private homes or gardens to a centralized corporate server.
- Customization: Open weights allow for future fine-tuning on highly specific regional agricultural datasets or localized pests, which closed models rarely support affordably.
Prize Categories
- Week 1: Touch Grass
- Open-Source AI Innovator
Top comments (1)
tr.ee/dev-to