Plant Tracker
Case study · Tech & fun
Photograph a plant, and a care plan grows back
- What
- A camera-first houseplant tracker: photo in — species ID, health score, and a care schedule out, with a daily digest of what needs you today.
- Stack
- Flask + Supabase behind a vanilla-JS PWA; photo analysis runs out-of-band through Claude Code against a sourced species database.
- Status
- Active
- Dates
- Built July 2026 · Updated August 2026
- Links
- Local-only — runs on the home network, no public deploy or repo
Background
Can a phone camera keep a houseplant collection alive?
Plant Tracker (in-app: Plant Health — Track & Nurture) bets that the camera is the only interface a plant app actually needs. Add a plant by photographing it, and the system identifies the species, reads its condition, and generates a care schedule — watering, light, feeding, repotting — from a research-backed species database where every care claim carries a source. A daily digest then triages the whole collection into "what needs you today."
The architectural twist: the backend never calls an AI API. Photos land in a pending queue, and a Claude Code session — a skill invoked by hand, or a daily routine — picks them up, does the vision analysis, and writes care profiles back. No API keys, no per-request bill, and the Flask app stays a dumb, reliable CRUD server.
A Look Inside
Each view shown on mobile and desktop — captured from the app running locally. Personal tool, no public deploy.
How It Works
A small Flask + Supabase backend serves an installable vanilla-JS PWA; everything intelligent happens out-of-band:
- Camera-first capture: add a plant from a photo — taken, chosen, pasted, or screenshotted. Images get EXIF rotation baked in and are downscaled to Claude's optimal long edge before queueing.
- Out-of-band analysis: a Claude Code session drains the pending queue — species ID, a 1–10 health read, even pot details — and upserts each plant's care profile. The server never holds a model key.
- Research-backed care: cadences come from a JSON species database with sourced care guides, propagation methods, common problems, and repotting rules per species.
- The Today digest: species-specific tasks with overdue states, the upcoming watering schedule, and one-tap Watered / Fed / Repotted logging that builds each plant's story-so-far.
- Field-note guides: deeper reading built in — air-purifying species, a sacred-lotus playbook, container-garden layouts.
Local-only by choice: it runs on the home network for one household and its plants — including a banana plant that is, against the odds, fruiting indoors.