SlothDrip: Zero-Touch Plant Watering Decisions with Tabular AI + Gemma
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady
What I Built
I built SlothDrip - an offline-first, โlazy gardenerโ assistant that predicts whether your plant needs watering and gives a simple one-line action.
Instead of manually checking soil every day, users enter a few quick values:
- days since last watering
- average temperature
- humidity
- soil type
The app then returns a clear verdict:
- ๐ง WATER
- ๐ด DO NOTHING
This saves daily effort for home gardeners and makes watering decisions faster and more consistent.
Demo
- Live App: https://slothdrip-fcc37ir38vccqekd6m7obc.streamlit.app/
- GitHub Repo: https://github.com/AslamSujah/slothdrip
Code
The full source code is available here: https://github.com/AslamSujah/slothdrip
Main components:
app.pyโ Streamlit UImodel.pyโ moisture prediction logic (TabPFN + fallback)llm.pyโ local Gemma/Ollama action-note generationdb.pyโ SQLite loggingrequirements.txtโ dependencies
How I Built It
SlothDrip is built as a local-first AI pipeline:
Tabular prediction layer (TabPFN approach)
I use tabular features to estimate watering probability from structured garden conditions.
Natural-language action layer (Gemma via Ollama)
A local LLM converts numeric prediction into a short, friendly โlazy instruction.โ
Offline persistence (SQLite)
Every prediction is logged locally so users keep plant history without cloud dependence.
Simple local UI (Streamlit)
A lightweight dashboard keeps interaction minimal and beginner-friendly.
Note on deployment During deployment, I handled a TabPFN license/runtime issue by implementing an automatic fallback model (scikit-learn), so the app stays reliable in hosted environments while preserving the same user experience.
Why Does Open Innovation Matter?
Open innovation made this project possible in a practical way:
- No monthly API lock-in for core functionality
- Local-first architecture for privacy-sensitive home data
- Flexibility to combine open-weight model workflows with fallback logic
- Resilience: the app can continue working even if one model path is unavailable
A closed-only API setup would have made this more expensive and less robust for offline or low-connectivity scenarios.
My Agent Session
I built and iterated this project with AI-assisted development workflows, including deployment troubleshooting and model fallback integration. (If needed, I can update this section with a public session link/embed.)
The Lazy Payoff
SlothDrip reduces repetitive daily checking into a quick decision flow:
- input takes under a minute
- output is immediate and actionable
- logs build a long-term watering history automatically
So the โslow and steadyโ benefit is real: fewer routine checks, faster decisions, less mental overhead.
Prize Categories
Iโm entering the following categories:
- Best Use of TabPFN
- Best Use of Gemma
Comments
No comments yet. Start the discussion.