Florae is a local-first web application for tracking and caring for your plants, integrated with an AI-powered photo diagnosis system. Choose your favorite AI provider (OpenAI or Google Gemini) and pick the model that fits your budget โ from ultra-cheap mini/flash models up to premium ones.
- Activity Dashboard: High-visibility panel (top of the page) showing urgent tasks โ sick plants or those needing immediate watering.
- Automatic Watering Reminders ๐: set a watering frequency (in days) for each plant and Florae automatically creates the "๐ง Water" task on your dashboard when it's time โ complete it, and the next one schedules itself.
- AI Botanist Chat ๐: chat with a virtual agronomist who knows every plant in your tracker. Uses the provider/model you picked in Settings.
- Weather & Frost Alerts ๐: current conditions + 4-day forecast on your dashboard (Open-Meteo, no API key needed). Frost warnings for outdoor plants and "it rained โ skip watering today" hints.
- Telegram Notifications ๐: get pinged when watering tasks are scheduled or an urgent AI diagnosis lands.
- Seasonal Care Tracking: Dynamic care tips based on the current month for each plant in your database.
- Personal Botanical Database: Manage and browse detailed plant cards (light exposure, watering needs, general care, seasonal calendar).
- AI Photo Diagnosis: Upload a photo of struggling leaves or stems. The AI identifies the plant, diagnoses the disease/problem, and suggests a detailed treatment. Click "Apply & Save to Database" to automatically add the task to your urgent dashboard!
- AI Model Selection ๐: From the Settings page, choose exactly which AI model to use โ cheap options like GPT-4o mini or Gemini Flash are recommended and cost only a fraction of premium models.
- Smart Simulation Mode: No API key yet? The app simulates incredibly realistic botanical diagnoses so you can test the full workflow. Add your real key anytime from the Settings page.
Built with Python and Flask โ ready to run locally.
Ensure Python 3 is installed:
python3 --versionOpen Terminal and navigate to the project folder:
cd ~/Desktop/plant-trackerCreate a virtual environment (recommended to avoid conflicts):
python3 -m venv venv
source venv/bin/activateInstall required packages:
pip install -r requirements.txtpython3 app.pyThe app runs on port 5001 (avoids AirPlay conflict on macOS): ๐ http://127.0.0.1:5001
L'app รจ disponibile come immagine Docker pronta su GitHub Container Registry.
Su ZimaOS:
- Apri il pannello App/Docker di ZimaOS e crea (o modifica) l'app usando questa immagine:
ghcr.io/chiavedj/plant-tracker:latest - Mappa la porta 5001 (es.
5001:5001). - Aggiungi un volume per il database:
/app/instanceโ cosรฌ i tuoi dati sopravvivono agli aggiornamenti. - Quando esce una nuova versione, aggiorna l'immagine da ZimaOS e ricrea il container: le impostazioni e i dati restano al loro posto.
Con docker-compose (su qualunque server):
docker compose up -dIl file docker-compose.yml nel repo รจ giร configurato con volumi persistenti per database (florae-data) e foto caricate (florae-uploads).
โ ๏ธ Dopo un aggiornamento dell'immagine, fai sempre un hard refresh del browser (Cmd/Ctrl+Shift+R) per non vedere pagine vecchie dalla cache.
To enable real AI-powered photo analysis:
- Launch the app and go to Settings from the sidebar.
- Pick your provider: OpenAI or Google Gemini.
- Paste your API key:
- OpenAI โ starts with
sk-..., get one at platform.openai.com - Google โ starts with
AIzaSy..., get one at aistudio.google.com
- OpenAI โ starts with
- Choose the AI model from the list โ budget models (mini / flash / nano) work great for plant diagnosis at a fraction of the cost.
- Click Save Configuration. Done! ๐ฑ
๐ก Keys are updated only when you type something in the field โ leaving it blank keeps the previously saved key.