2025-12-03 23:26:09 +00:00

Trekking Packliste

Eine moderne, webbasierte Anwendung zur Verwaltung von Packlisten für Wanderungen, Trekking-Touren und Reisen. Die Anwendung hilft dir, deine Ausrüstung zu organisieren, das Gewicht zu optimieren und nichts Wichtiges zu vergessen. Besonderer Fokus liegt auf der Zusammenarbeit in Haushalten und einer hierarchischen Packstruktur (z.B. Inhalt im Kulturbeutel im Rucksack).

Inhaltsverzeichnis

  1. Features
  2. Installation & Einrichtung
  3. Bedienungsanleitung
  4. Technologie

Funktionen

  • Artikeldatenbank: Erfasse deine gesamte Ausrüstung mit Bild, Gewicht, Hersteller und Kategorie.
  • Intelligente Packlisten:
    • Drag & Drop Editor: Ziehe Artikel einfach aus deinem Bestand in die Liste.
    • Verschachtelung (Nesting): Organisiere deine Liste logisch. Ziehe Socken in den Packsack und den Packsack in den Rucksack.
  • Haushalts-Modus: Teile deinen Artikelbestand und deine Listen mit Familie oder Freunden.
  • Gewichtskalkulation: Sieh sofort, wie schwer dein Rucksack ist und wie viel Gewicht auf welche Kategorie (z.B. "Kochen", "Schlafen") entfällt.
  • Druck-Optimierung: Generiere eine übersichtliche PDF/Druckansicht zum Abhaken.
  • Modernes UI: Responsive Oberfläche mit Dark-Glass-Effekten.

Installation

Voraussetzungen

  • Webserver (Apache mit mod_rewrite empfohlen, oder Nginx)
  • PHP 8.0 oder höher
  • MariaDB / MySQL Datenbank
  • PHP-Erweiterungen: mysqli, gd (für Bildbearbeitung)

Schritt-für-Schritt

  1. Dateien hochladen: Kopiere alle Dateien aus diesem Repository in das Web-Verzeichnis deines Servers (z.B. /var/www/html/packliste).

  2. Datenbank einrichten:

    • Erstelle eine leere Datenbank (z.B. packliste).
    • Importiere die Datei packliste.sql in diese Datenbank (z.B. via phpMyAdmin oder Konsole).
  3. Konfiguration:

    • Erstelle eine Datei config.ini außerhalb des öffentlichen Web-Verzeichnisses (z.B. ein Verzeichnis höher als index.php).
    • Inhalt der config.ini:
      servername = localhost
      username = dein_db_benutzer
      password = dein_db_passwort
      dbname = packliste
      
    • Hinweis: Die Anwendung sucht standardmäßig unter ../config.ini.
  4. Berechtigungen: Stelle sicher, dass der Webserver Schreibrechte auf den Ordner uploads/ und uploads/images/ hat.


Bedienungsanleitung

1. Erste Schritte & Haushalte

Nach der Registrierung landest du auf dem Dashboard. Die App ist darauf ausgelegt, dass man Ausrüstung teilen kann.

  • Haushalt gründen: Unter dem Menüpunkt "Haushalt" kannst du einen neuen Haushalt erstellen (z.B. "WG Müller" oder "Familie Schmidt").
  • Mitglieder einladen: Als Admin des Haushalts kannst du andere registrierte Benutzer per Benutzernamen einladen. Diese sehen nach dem Login eine Einladung, die sie annehmen können.
  • Vorteil: Alle Artikel, die als "Für Haushalt freigegeben" markiert sind, können von allen Mitgliedern in deren Packlisten verwendet werden.

2. Ausrüstung verwalten (Artikel)

Unter "Artikel" pflegst du deinen Bestand.

  • Erstellen: Klicke auf "Neuen Artikel hinzufügen".
  • Bilder: Du kannst Bilder hochladen, eine URL angeben oder (am Desktop sehr praktisch) ein Bild einfach per Strg+V (Copy & Paste) in das markierte Feld einfügen.
  • Eigenschaften:
    • Gewicht: Sei präzise! Das ist die Basis für die Statistiken.
    • Verbrauchsartikel: Markiere Dinge wie Gas, Essen oder Sonnencreme. Diese haben in Packlisten standardmäßig die Menge 1, können aber beliebig erhöht werden.
    • Lagerort: Hilft dir, das Zeug zu Hause wiederzufinden.
  • Listenansicht: Die Artikelliste ist nach Kategorien gruppiert. Du kannst Kategorien ein- und ausklappen und oben über das Suchfeld blitzschnell filtern (z.B. nach "Zelt" oder "Merino").

3. Stammdaten (Kategorien, Orte, Hersteller)

Damit alles ordentlich bleibt, solltest du die Stammdaten pflegen:

  • Kategorien: Definiere grobe Gruppen wie "Schlafen", "Küche", "Kleidung".
  • Lagerorte: Hierarchisch aufgebaut (z.B. "Kellerregal" -> "Kiste 3").
  • Hersteller: Wird oft beim Artikelanlegen automatisch mit angelegt, kann hier aber bereinigt werden.

4. Packlisten erstellen & bearbeiten

Dies ist das Herzstück der Anwendung.

  1. Gehe zu "Packlisten" und erstelle eine neue Liste.
  2. Klicke in der Übersicht auf "Artikel verwalten" (das Box-Icon) oder "Bearbeiten".

Der Packlisten-Editor (Drag & Drop)

Der Editor ist zweigeteilt:

  • Links: Dein verfügbarer Artikelbestand (filterbar).
  • Rechts: Deine Packliste, gruppiert nach Trägern (Personen im Haushalt).

Bedienung:

  • Hinzufügen: Ziehe einen Artikel von links nach rechts in den Bereich einer Person.
  • Verschachteln (Nesting): Das Killer-Feature! Du kannst Artikel in andere Artikel ziehen.
    • Beispiel: Ziehe den "Schlafsack" auf den "Rucksack". Der Schlafsack ist nun logisch im Rucksack verpackt.
    • Dies hilft enorm, die Übersicht zu behalten und beim Packen strukturiert vorzugehen.
  • Sortieren: Ziehe Artikel nach oben oder unten, um die Reihenfolge zu ändern.
  • Menge: Ändere die Anzahl direkt im Eingabefeld.
  • Komponenten: Wenn du einen Artikel hinzufügst, der selbst Unter-Artikel im Bestand definiert hat (z.B. "Zelt" besteht aus "Zeltplane", "Gestänge", "Heringen"), fragt dich die App, ob diese Komponenten automatisch mit auf die Liste sollen.

5. Drucken & Export

Klicke in der Packlisten-Übersicht auf "Details ansehen" (Augen-Icon).

  • Ansicht: Du siehst eine hierarchische Baumstruktur deiner Liste.
  • Statistiken: Rechts (oder mobil unten) siehst du Diagramme zur Gewichtsverteilung nach Kategorie und Träger.
  • Drucken: Klicke auf "Drucken". Die Ansicht ist speziell für Papier optimiert:
    • Farben und Bilder werden reduziert.
    • Checkboxen zum manuellen Abhaken werden eingeblendet.
    • Ideal als Checkliste für den Rucksack-Pack-Abend.

6. Profil & Einstellungen

Unter "Profil" kannst du:

  • Dein Passwort und Benutzernamen ändern.
  • App-Einstellungen:
    • Tabellenanzeige: Wie viele Items pro Seite?
    • Kategorien: Sollen in der Artikelübersicht alle Kategorien standardmäßig eingeklappt sein? (Nützlich bei sehr vielen Artikeln).

Technologie

Das Projekt basiert auf bewährten Web-Standards:

  • Backend: PHP 8.2 (Natives PHP, keine schweren Frameworks)
  • Frontend: HTML5, CSS3 (Custom Theme), Bootstrap 5
  • Datenbank: MariaDB / MySQL
  • JavaScript: Vanilla JS + Sortable.js (für Drag & Drop) + Chart.js (für Diagramme).
Description
No description provided
Readme 28 MiB
Languages
PHP 94.4%
CSS 5.5%
Dockerfile 0.1%