# Cazubu - Dein Cannabis Zucht Buddy 🌱

Cazubu ist eine moderne Webanwendung zur Verwaltung und Überwachung deiner Cannabis-Zucht ("Homegrow"). Sie hilft dir, den Überblick über Pflanzen, Inventar, Samen und Umweltbedingungen zu behalten.

![Cazubu Dashboard](assets/dummy_plant.png)

## Funktionen 🚀

### 1. Pflanzenverwaltung 🌿
*   **Lebenszyklus:** Dokumentiere jeden Schritt vom Keimen bis zur Ernte.
*   **Details:** Erfasse Sorte, Standort (Zone/Zelt), Phase (Wachstum/Blüte) und Alter.
*   **Bildergalerie:** Lade Fotos deiner Pflanzen hoch, um die Entwicklung festzuhalten.
*   **Aktivitäten-Log:** Protokolliere Gießen, Düngen, Umtopfen oder Beschneiden.
*   **Messungen:** Erfasse regelmäßig die Höhe deiner Pflanzen.

### 2. Sensor-Überwachung 🌡️
*   **Live-Daten:** Visualisierung von Temperatur und Luftfeuchtigkeit.
*   **Historie:** Interaktive Graphen für 24h, 7 Tage oder 30 Tage.
*   **API-Schnittstelle:** Einfache Integration von ESP32/Arduino Sensoren.

### 3. Inventar & Samenbank 📦
*   **Zonen:** Definiere deine Anbaubereiche (z.B. "Zelt 1", "Outdoor").
*   **Gefäße:** Verwalte deine Töpfe und deren Größen.
*   **Samen:** Behalte den Überblick über deine Genetik-Sammlung (Sativa/Indica Anteil, Autoflower, Anzahl).

### 4. Dashboard 📊
*   Schneller Überblick über offene Aufgaben und Bestände.
*   Direkteinstieg in die wichtigsten Bereiche.

---

## Installation 🛠️

### Voraussetzungen
*   Docker & Docker Compose
*   Alternativ: Webserver mit PHP 8.2+ und MySQL/MariaDB

### Docker Quickstart

1.  **Repository klonen:**
    ```bash
    git clone https://git.klenzel.net/admin/cazubu.git
    cd cazubu
    ```

2.  **Container starten:**
    ```bash
    docker-compose up -d
    ```
    *Die App ist nun unter `http://localhost:8090` erreichbar.*

3.  **Standard-Login:**
    *   Benutzer: `testnutzer`
    *   Passwort: `Start123!`

### Manuelle Installation (ohne Docker)
1.  Kopiere den Inhalt von `src/` in dein Webroot.
2.  Importiere `src/database/install.sql` in deine Datenbank.
3.  Passe `src/includes/db_connect.php` oder die Umgebungsvariablen an.

---

## Bedienungsanleitung 📖

### Erste Schritte
1.  **Inventar anlegen:** Gehe zu "Inventar" und erstelle mindestens eine **Zone** (z.B. "Growbox") und ein **Pflanzgefäß** (z.B. "11L Topf").
2.  **Samen erfassen:** Trage deine Samen unter "Samen" ein.
3.  **Pflanze starten:** Klicke auf dem Dashboard oder unter "Pflanzen" auf "+ Neue Pflanze". Wähle Samen, Zone und Topf aus.

### Sensoren verbinden
Jeder Benutzer hat einen eigenen API-Key (siehe "Profil").
Sende Sensordaten per HTTP GET Request an:

```
http://DEINE-IP/api.php?apikey=DEIN_KEY&pflanze=PFLANZEN_ID&sensor=temp&wert=24.5
http://DEINE-IP/api.php?apikey=DEIN_KEY&pflanze=PFLANZEN_ID&sensor=humidity&wert=60
```
*Die `PFLANZEN_ID` findest du in der Detailansicht der Pflanze.*

---

## Tech Stack 💻
*   **Frontend:** Bootstrap 5.3, Chart.js, jQuery
*   **Backend:** PHP 8.2 (Native)
*   **Datenbank:** MySQL / MariaDB
*   **Design:** Custom "Organic Light Glass" Theme (CSS Variables, Backdrop Filter)

---

## Changelog
**v18.3.0** (Aktuell)
*   Redesign: Modernes "Light Glass" UI.
*   Feature: Sensor-Historie mit Zeitfilter (24h/7d/30d).
*   Verbesserung: Erweiterte Samen-Datenbank mit Genetik-Anzeige.
*   Fix: Diverse Bugfixes in Tabellen und DataTables.

**v1.0.0**
*   Initiale Dockerisierung und Grundfunktionen.
