Files
grotti/docs/internal/Features-UI.md
T
Dominic Gundel 9e22cebb81 Grotti 2.10.0: Orca-Senden, Slice-Ordner, ED-Strom, Hygiene.
Slice-Watch mit Ordnern/Filtern, Orca-Nachbearbeitung, Cockpit-Verlauf
mit ED, Zeitzone im Browser. Tasten-Grenze und README-API angeglichen,
toter Code entfernt, Requirements gepinnt.
2026-10-18 00:41:15 +02:00

5.1 KiB
Raw Blame History

Grotti: Alltag und Oberfläche

Stand 18.10.2026, v2.10.0.

Design

  • Dunkles UI mit Orange-Akzent, Lucide-ähnliche Stroke-Icons (SVG-Sprite in layout.html).
  • Kurze Seitenuntertitel; Technik-/Config-Hinweise liegen in der Doku, nicht als Fließtext in den Formularen.
  • Einheitliche Seitenköpfe, Toolbar-Filter, kompakte Tabellen, Formularfelder mit kleinen Labels, Empty-States mit Icon.
  • Anzeige pro Browser (Einstellungen → Dieser Browser): Desktop oder Regal (Touch) in localStorage grotti-display. Shortcut ?shelf=1 / ?shelf=0. Regal: größere Controls, kompakte Nav (Drucker/Kameras/Warteschlange), Sidebar default eingeklappt. Zeitzone für Anzeigezeiten (grotti-timezone).
  • Seitenmenü einklappbar (Icon-Rail, grotti-nav-collapsed). Unter 760 px weiter Bottom-Nav.

Seitenleiste

  • Hauptmenü: Drucker, Dateien, Kameras, Aktivität, Warteschlange, Protokoll, Statistik, Material, Projekte. Darunter Einstellungen, Ideen, Doku (mit Icons); Fuß © by [email protected] und Version (Changelog).
  • Live-Leiste, eigene Scrollfläche, Boxen auf- und zuklappbar (Zustand in localStorage grotti-live-closed):
    • Läuft jetzt: eine Zeile pro Drucker (Name · % · Fertig-Uhr, Fortschritt in der Zeile); bei Abläufen Schritt n/m statt Schrittleiste; Klick → /warteschlange, × bricht ab; auch Direktstarts ohne Queue.
    • Wartet: wartende Aufträge mit Ziel, Priorität hoch/runter, Abbrechen; die letzten Fehler mit Fortsetzen/ausblenden.
    • Aufgaben: Platte belegt ohne Ablauf — „geräumt“ per Zwei-Klick.
    • Senden: laufende Uploads mit Fortschritt.
    • Alerts: ungelesene wichtige Ereignisse, „gelesen“, Link auf Aktivität.
  • Aktualisierung: Senden 2 s, Queue 4 s, Aufgaben/Alerts 8 s.

Wand

  • Karte je Drucker: Zustandschip, Fertig-Uhrzeit groß, Fortschrittsbalken, drei Kacheln (Rest, Schicht, Läuft), Temperaturbalken Düse/Bett mit Ziel, Datei, Vorschaubild. Klick auf die Karte öffnet das Cockpit. Pause, Abbrechen, Fehler löschen und Platte geräumt bleiben auf der Karte (Zwei-Klick).
  • Laufender Ablauf als Streifen mit Schrittleiste und Abbrechen. Wartende Aufträge für diesen Drucker als Hinweis.
  • Streifen „Fehler“ mit Fehler löschen und „Platte belegt“ mit Platte geräumt (während eines Ablaufs ausgeblendet, der räumt selbst).
  • Cockpit (Hash /#<host>): Kamera (Frame-Vorladen; zugeklappt oder ohne Kamera → eine Spalte, kein leeres 16:10), Status, Temps inkl. Bauraum wenn vorhanden, Lüfter-Icons, Steuerung (inkl. ACE-Trockner und ACE-Plätze schreiben), Verlauf (aktueller/letzter Druck mit Temp/ED, Link Bericht), 3D-Pfad (Exclude-Object), Bettnetz. E-Stop nur bei printing/paused/heating, Zwei-Klick. Live vom Watcher. API GET /api/v1/laeufe/aktuell?host=.

Dateien und Senden

  • Links Bibliothek: Suche (Name/Material/Projekt), Filter Maschine/Projekt/Material/Ordner, Sortierung inkl. Gruppenköpfe; Filter in localStorage grotti-lib-v1. Vorschaubild; Zeile zeigt Material, Zeit, Gewicht, Schichthöhe, Maschine, Projekt; Details per Info-Popup. API-Feld folder (Relativpfad unter watch_dir, Uploads → Upload). Mit watch_dir: Ordner anlegen (POST /dateien/ordner), Watch-Datei verschieben (POST /dateien/<id>/verschieben, stored_path per ID). Metadaten aus G-code-Kopf und Footer. Hochladen / Ordner neu lesen. Orca-Nachbearbeitung: scripts/orca_senden.py.
  • Rechts der Flow: Datei → Drucker (Live-Zustand, eingelegte Rolle) → Wann (Jetzt / Wenn frei / Nächster freier) oder Reiter Ablauf.
  • Kein freies Spulen-Dropdown: Abzug nimmt die Rolle(n) am Ziel-Drucker zur Startzeit. ACE: Zuordnung Datei-Farbe → Platz. Warnung bei Material-Mismatch oder zu wenig Rest.
  • Startknopf mit Zwei-Klick bei „Jetzt“. Auswahl in localStorage grotti-send-v1.

Material

  • Reiter Spulen / Sorten. Scan-Feld im Seitenkopf (S-… Spule, D-… Druckbericht).
  • Spulen: Filter Alle / Am Drucker / Regal / Wenig Rest + Suche. Formular nur bei Auswahl oder „Neue Spule“ (× schließt). Ort = Drucker · ACE/extern bzw. Regal. Akte mit Verbrauch und Leer-in (KPI-Kacheln).
  • Sorten: Profile (Dichte, mm³/s, Preis, Maschinen). Anlegen/ändern/löschen; „Spule damit anlegen“ wechselt zum Spulen-Reiter.

Protokoll und Statistik

  • Protokoll-Zeile → Druckbericht /protokoll/<id> (Soll/Ist, Spulen, Temperatur/ED-Verlauf, Charge, Etiketten). Charge schon am laufenden Druck; Etikett an der Wand und im Bericht.
  • Statistik /statistik: KPIs (Läufe, Zeit, Verbrauch, Kosten, Erfolg, Ausschuss), nach Drucker/Material, Zeitraum-Presets, CSV mit denselben Filtern.

Warteschlange

  • Seite /warteschlange: Filter Läuft / Wartet / Fehler / Historie. Priorität, Abbrechen, Fortsetzen.
  • Unter Läuft / Alle aktiv auch Direktstarts aus /laeuft (ohne Queue-Zeile), mit Fortschritt und Link zur Wand.
  • Ablauf-Tasten: Grenze max_delta_mm Default 3 mm.

Aktivität

  • Zeitstrahl nach Tagen. Filter in der URL. Ungelesene Alerts markiert.

Kameras und Handy

  • Kamerakacheln mit Live-Zustand (live=1). Snapshot-Cache 2 s. Unter 760 px: Schnellmenü Drucker / Dateien / Aktivität.