Final Release: Clean Structure, README added

This commit is contained in:
Gemini Bot
2025-12-03 23:23:12 +00:00
commit 8071489ca2
216 changed files with 6623 additions and 0 deletions

61
README.md Normal file
View File

@@ -0,0 +1,61 @@
# Trekking Packliste
Eine moderne, webbasierte Anwendung zur Verwaltung von Packlisten für Wanderungen, Trekking-Touren und Reisen. Ermöglicht das Erstellen von Artikeln, das Organisieren in hierarchischen Packlisten und die Zusammenarbeit in Haushalten.
## Funktionen
* **Artikelverwaltung:** Erfassen von Ausrüstungsgegenständen mit Gewicht, Kategorie, Hersteller und Bildern.
* **Packlisten:** Zusammenstellen von Artikeln zu Listen. Unterstützt Drag & Drop mit Verschachtelung (z.B. Rucksack -> Packsack -> Socken).
* **Haushalte:** Gemeinsame Nutzung von Artikeln und Listen mit anderen Benutzern.
* **Gewichtskalkulation:** Automatische Berechnung des Gesamtgewichts und Aufschlüsselung nach Kategorien und Trägern.
* **Druckansicht:** Optimierte Ansicht für den Ausdruck der Packliste.
* **Modernes UI:** Responsives Design mit Glassmorphism-Effekten und Dark-Mode-Ansätzen (Grünes Theme).
## Voraussetzungen
* Webserver (Apache, Nginx)
* PHP 8.0 oder höher
* MariaDB / MySQL Datenbank
* PHP-Erweiterungen: `mysqli`, `gd` (für Bildbearbeitung)
## Installation
1. **Dateien kopieren:** Lade den Inhalt dieses Repositories in das Web-Verzeichnis deines Servers hoch.
2. **Datenbank:**
* Erstelle eine neue Datenbank (z.B. `packliste`).
* Importiere die Struktur (Tabellen) in die Datenbank. (Ein SQL-Schema sollte separat bereitgestellt werden oder existiert bereits).
3. **Konfiguration:**
* Erstelle eine Datei `config.ini` **außerhalb** des öffentlichen Web-Verzeichnisses (aus Sicherheitsgründen empfohlen) oder schütze sie per `.htaccess`.
* Standardmäßig sucht die Anwendung die `config.ini` ein Verzeichnis **über** dem Webroot (`../config.ini`).
### Aufbau der config.ini
Die Datei muss folgende Struktur haben:
```ini
servername = localhost
username = dein_db_benutzer
password = dein_db_passwort
dbname = deine_datenbank_name
```
### Upload-Ordner
Stelle sicher, dass der Ordner `uploads/` und `uploads/images/` existiert und vom Webserver beschreibbar ist (`chmod 755` oder `777` je nach Server-Konfiguration).
## Nutzung
1. Registriere dich auf der Startseite.
2. Lege im Profil deine Einstellungen fest.
3. Erstelle Artikel unter "Artikel".
4. Erstelle eine Packliste und füge Artikel per Drag & Drop hinzu.
## Technologie
* **Backend:** Natives PHP 8.2
* **Datenbank:** MariaDB
* **Frontend:** HTML5, CSS3 (Custom Glassmorphism Theme), Bootstrap 5
* **Bibliotheken:**
* Sortable.js (Drag & Drop)
* Chart.js (Statistiken)
* FontAwesome (Icons)