5.2 KiB
ADR-0020: Produktname „Flotten-Management" und zweistufige Navigation
Status: Beschlossen Datum: 26.08.2026
Kontext
ADR-0018 hatte die Umbenennung des Navigationseintrags „Geräte" zu „Flotte" beschlossen, aber die Frage offengelassen, ob auch der Produktname selbst („Kundenplattform", bislang nur spontan gewählt) angepasst werden soll. Der Nutzer entschied sich für „Flotten-Management" als sprechenderen Namen.
Parallel dazu war die bestehende Navigation eine einzige flache horizontale
Liste (base.html) ohne jede Gruppierung — mit wachsender Seitenzahl (aktuell
Flotte, Struktur, Gruppen, Installationsmedium, Organisation, plus Admin für
Superuser) wurde das unübersichtlich. Insbesondere lagen „Struktur"
(Organisationseinheiten) und „Gruppen" als gleichrangige Nachbarn neben
„Organisation", obwohl beide inhaltlich steuern, welche Merkmale ein Gerät
über seine OE-/Gruppen-Zugehörigkeit bekommt (siehe ADR-0012) — organisatorisch
näher an „Organisation" als eigenständige Themen.
Entscheidung
Produktname: Nur das sichtbare Label wird geändert — die
Navigationsmarke im Header (base.html) und der (aktuell ohnehin dormante,
da /docs deaktivierte, siehe Sicherheits-Review 25.08.2026) FastAPI-Titel
heißen jetzt „Flotten-Management". Interne technische Namen bleiben bewusst
unverändert: Environment-Variablen-Präfix KUNDENPLATTFORM_*, systemd-Service/
-User/-Group kundenplattform, Verzeichnis /opt/kundenplattform,
Git-Repo-Name, Postgres-Datenbankname, Cookie-Name kundenplattform_session.
Begründung: keiner dieser Namen ist je für einen Kunden sichtbar, eine
komplette technische Umbenennung wäre ein eigenes Migrationsprojekt mit
Deploy-Risiko (koordinierter Neustart, Pfad-/Secret-Umzug) für rein
kosmetischen Nutzen.
Navigation: von einer flachen horizontalen Liste auf eine zweistufige
Struktur umgestellt: eine vertikale Primär-Spalte mit den Hauptkategorien
(Flotte, Organisation, Installationsmedium, Admin — letzteres weiterhin nur
für is_superuser), und bei Kategorien mit mehreren Unterseiten eine
horizontale Sekundär-Nav im Hauptbereich. „Struktur" und „Gruppen" werden
beide Unterpunkte von „Organisation" (neben der bestehenden
Stammdaten/Konten-Seite selbst). Die aktive Kategorie/Unterseite wird rein
aus dem URL-Pfad-Präfix abgeleitet (base.html, Jinja-{% set %} auf
request.url.path) — keine Router-/Kontext-Änderungen in den einzelnen
Seiten nötig, URLs bleiben unverändert (/struktur, /gruppen etc.), reine
Darstellungsänderung.
Der interne Admin-Bereich (admin/layout.html) hatte bereits eine eigene
horizontale Sub-Nav (Technik/Datenbank, Flotte, Flows, Kunden) — dieses
Muster diente als Vorbild für die neue Sekundär-Nav und wurde unverändert
übernommen (es erbt weiterhin von base.html und sitzt jetzt konsistent
unter derselben Primär-Spalte).
Layout technisch über ein schlankes eigenes Flexbox-CSS in base.html
umgesetzt (Pico CSS bringt kein Sidebar-Pattern mit) — nutzt ausschließlich
Picos bestehende CSS-Variablen (--pico-primary-background etc.), damit
automatisches Dark/Light-Mode-Verhalten erhalten bleibt. Auf schmalen
Bildschirmen (max-width: 768px) fällt die Sidebar per Media Query auf eine
horizontale Liste über dem Inhalt zurück.
Konsequenzen
Reine Template-/CSS-Änderung (base.html, app.py-Titel) — keine
Datenbank-, API- oder Routing-Änderung, kein Migrationsbedarf, keine
bestehenden Links/Lesezeichen brechen.
Lokal verifiziert: alle 29 Templates parsen weiterhin fehlerfrei (Jinja-
Syntaxcheck), base.html mit gemocktem Request-Objekt für jeden
Primär-/Sekundär-Pfad gerendert (korrekte Aktiv-Markierung, Sekundär-Nav
erscheint nur unter „Organisation"), und eine Stichprobe realer Seiten
(Geräteliste, Organisation, Struktur, Gruppen, Admin-Kunden-Index) rendert
mit dem neuen Layout ohne Fehler. Live auf anode verifiziert: echter Login
über die WLAN-Test-Fixture, Marke „Flotten-Management" und korrekte
Primär-/Sekundär-Nav-Zustände (/geraete, /struktur, /gruppen,
/organisation, /installationsmedium) bestätigt.
Wie schon in ADR-0018 festgehalten: sollte künftig auch der übrige Sprachgebrauch der Anwendung (Seitentitel, Tabellenüberschriften, Fehlermeldungen) auf „Flotten-Management" umgestellt werden sollen, ist das eine eigene, hier nicht vorweggenommene Folgeentscheidung.
Nachtrag 26.08.2026: öffentliche Startseite angeglichen
Die separate, eigenständige öffentliche Info-/Landingpage
(tuxflotte.de/www.tuxflotte.de, statisches HTML, gehostet auf einem
dritten Host außerhalb von anode — neues Repo admin/infoseite, siehe
README/Commit-Historie dort) stammte aus einer früheren Phase und trug
noch den Arbeitstitel „Workspace Lifecycle Management" — kollidierte mit
der oben getroffenen Namensentscheidung. Titel/Überschrift jetzt auf
„Tuxflotte – Flottenmanagement für Linux-Computer" vereinheitlicht, dazu
ein „Anmelden"-Link zur künftigen flotten-management.tuxflotte.de-
Subdomain ergänzt (der bislang komplett fehlte). Ausführlicherer
Seiteninhalt (Produktbeschreibung, Screenshots) bewusst vertagt — die
Plattform selbst verändert sich noch zu sehr, um jetzt schon stabile
Marketing-Inhalte zu rechtfertigen.