v3.10.2 Aktuell
- Gallery Scroll-Flicker beseitigt — Virtual-Scroll-Reconciler komplett neu geschrieben (Two-Pass: Pre-Sweep + Cursor-Sweep). Cards mit identischem Slot-Index bleiben physisch im DOM unangetastet beim Scrollen — kein Image-Decode-Reset, kein Compositor-Restack mehr.
- Browser-Scroll-Anchoring deaktiviert —
overflow-anchor: none auf .gallery-wrap: der Browser versucht nicht mehr beim Reconcile die scrollTop „zu korrigieren“ (User sah vorher ein Springen zurück).
- Eager Loading für Card-Thumbnails —
loading="lazy" + fetchpriority="low" aus dem Standard-Card-Pfad entfernt. Bilder im Virtual-Scroll-Buffer (12 Rows) laden und dekodieren vor Sichtbarkeit — kein Pop-In mehr.
- Lazy-Upgrade Pre-Decode — Wenn ein Placeholder im DOM steht und Daten nachkommen, wird das Thumbnail off-DOM via
new Image()+decode() vorgeladen und atomar getauscht. Keine weisse Zwischenphase mehr zwischen Shimmer und fertiger Card.
- Fix: Upgrade-in-Progress Schutz — Bei aktivem Scrollen wurde der laufende Decode für einen Slot bei jedem Reconcile neu gestartet (alter Decode ging ins Leere). Neuer Branch erkennt aktive Upgrades und lässt den laufenden Decode in Ruhe fertig werden.
- Hover-Transforms während Scroll unterdrückt —
.is-scrolling-Klasse (~150ms debounced) auf .gallery-wrap blockiert translateY/scale-Effekte beim Wheel-Pass-over — kein zusätzlicher Compositor-Restack mehr.
- VIRTUAL_BUFFER auf 12 erhöht — mehr Vorlauf für Image-Loading vor Sichtbarkeit.
v3.10.1
- Explorer-Style Selection — Rubber-Band-Selektion (Lasso) durch Ziehen in der Gallery; Ctrl/Shift für additive Auswahl; ESC und Rechtsklick brechen ab.
- Drag & Drop in Sidebar-Ordner — Ausgewählte Dateien per Drag auf Ordner oder Trash verschieben; benutzerdefinierter Drag-Ghost mit Anzahl-Badge.
- Conflict-Dialog — Dateinamenskollisionen beim Move: Abbrechen / Überspringen / Beide behalten (automatisches Umbenennen).
- Fix: Rubber-Band-Überselektion — X-Achsen-AABB-Check verhindert versehentliche Auswahl von Cards ausserhalb der Ziehbox.
- Fix: Text-Selektion während Drag — Browser-native Text-Markierung beim Rubber-Band-Ziehen unterdruückt.
- Fix: Leere-Zone-Klick — Klick in leeren Galerie-Bereich hebt Selektion korrekt auf; Ctrl/Shift-Klick behält Selektion.
- Fix: Drag-Ghost-Duplikat — Nativer HTML5-Image-Ghost beim Card-Drag unterdruückt.
v3.8.3
- Design-Token-System erweitert — Spacing-Scale, Font-Size-Scale, Motion-Durations, Z-Index-Scale und Pill-Radius als CSS-Tokens; ~30 hardcoded Hex-Farben auf
--ok/--warn/--err/--info migriert.
- A11y: Keyboard-Navigation + Reduced Motion — Globales
:focus-visible, prefers-reduced-motion für Animationen, :disabled/:active auf Base-Button.
- Typografie: Browser-Zoom-Support — Viewer-Panel 19 Font-Sizes von px auf rem; Font-Weight 900 wird jetzt korrekt geladen; Settings-Buttons Font-Family harmonisiert.
- Fix:
--acc-rgb und --green undefiniert — Stille Farb-Fallback-Fehler bei Favoriten-Button und Iconify-Picker behoben.
- Update-Toast theme-aware — Hintergrundfarbe passt sich Light/Dark-Theme an; doppelter
@keyframes-Block entfernt.
- OneDrive-Umlaute-Fix (#21) — Thumbnail-Rendering bei Unicode-Ordnerpfaden ohne 8.3-Short-Path: ASCII-Staging via Hardlink/Copy für Input und Output;
make_safe_thumb_stem() garantiert ASCII-only Thumbnail-Dateinamen.
- Auto-Tag direkt ausfuehren — Schaltfläche in Settings führt Auto-Tagging sofort aus; Ergebnisse als Toast.
- i18n: Update-Checker + Settings Phase 2 — Fehlende Schlüssel in allen 6 Sprachen ergänzt.
v3.8.1
- Settings-Redesign „Tags & Kategorien“ — Kategorie- und Tag-Verwaltung mit neuem Card-Layout (Icon, Name, Keywords, Datei-Anzahl). Auto-Tag-Seite in Settings integriert.
- 30 Vorschlags-Kategorien — Ein-Klick-Import von 30 vordefinierten Kategorien mit Auto-Tag-Keywords für 3D-Druck.
- Kontextmenü-Submenu Fix — Submenüs (Tags/Kategorien) öffnen jetzt korrekt rechts neben dem Kontextmenü statt darüber.
- Bulk-Dialog Buttons — Abbrechen/Anwenden-Buttons im Mehrfachauswahl-Dialog korrekt gestylt.
v3.8.0
- Update-Checker in Gallery — Update-Benachrichtigung erscheint jetzt als Toast oben mittig in der Gallery statt auf der kurzlebigen Startseite. Klick öffnet blockierendes Update-Modal (Gallery ausgegraut).
- Mehrfach-Kategorisierung — Dateien können im Auswahlmodus gleichzeitig kategorisiert und favorisiert werden; Bulk-Kategorie-Dialog mit Suche.
- Kontextmenü überarbeitet — Viewport-begrenzte Submenu-Positionierung, Kategorie-Suchfeld ab 10+ Einträgen, Optimistic Updates mit Rollback.
- Debug Testing-Menü — Neuer Testing-Button im Debug-Modus: öffnet ein Modal mit Testfunktionen (z.B. Update-Simulation).
- DB-Write-Retry — Alle Metadata-Endpoints wiederholen bei
database is locked automatisch bis zu 3 Mal.
v3.7.1
- Defender-Hinweis vereinfacht — Kein automatisches Setzen der Defender-Ausnahme mehr;
/api/defender-status liefert nur noch den App-Pfad für den manuellen PowerShell-Hinweis.
- Auto-Update SHA256-Pflicht — Update-Installation schlaegt fehl wenn kein gültiger Hash vom Server geladen werden kann — verhindert Installation ungeprüfter Pakete.
- Dark-Mode Farbpalette — Blaustichigere Farbtöne im Dark-Mode für konsistentere visuelle Hierarchie.
- Fix: Virtual Scroll sbAllCount — Gesamt-Anzahl in der Sidebar wird nicht mehr durch
updateGalleryStats() überschrieben.
v3.7.0
- PWA entfernt — Service Worker, Manifest, PWA-Icons und
pwa-install.js vollständig entfernt; Wizard-Schritt 10 zeigt stattdessen Desktop-Shortcut-Option.
- Endpoints aufgeräumt —
POST /api/dismiss-shortcut, GET /manifest.json und GET /sw.js entfernt; Apple-PWA-Metatags aus index.html entfernt.
- i18n bereinigt —
welcome.pwa_*-Keys aus allen 6 Sprachen (de, en, cs, es, fr, it) entfernt.
- Config aufgeräumt —
shortcut_offered-Key wird nicht mehr geschrieben; Wizard-Abschluss vereinfacht.
v3.6.6
- PWA-Install im Wizard — Installations-Prompt als eigenständiges Modul (
pwa-install.js), statischer Import, _tryTriggerPwaInstallFromGesture() für stabilen Browser-Gesture-Kontext.
- Fix: i18n-Key
scan.eta_calculating — Fehlender Übersetzungsschlüssel in de.json und en.json ergänzt (ETA-Anzeige während Scan).
- Fix: Wizard-Finish —
setup_complete wird vor Gallery-Wechsel gesetzt; direkter Moduswechsel statt Splash-Neustart verhindert doppelten Ladevorgang.
- Fix: OneDrive-Prescan Deduplizierung — Known-Folder-Roots werden getrennt dedupliziert, um überlappende Scan-Pfade bei verschachtelten OneDrive-Ordnern zu vermeiden.
- Fix: Slicer-Detection Fehlerpfad —
found = [] wird jetzt vor dem try-Block initialisiert; verhindert NameError wenn Slicer-Suche mit Exception endet.
v3.6.5
- First-Run Wizard — Prescan-Counts im Ordner-Browser, PWA-Installations-Prompt und Slicer-Detection-Polling überarbeitet.
- PWA: Icons 192 px + 512 px — Neue Icon-Größen für korrekten App-Icon auf mobilen Geräten und Desktop-PWA.
- Fix: OneDrive-Prescan — Count-Thread-Semaphore und
_deduplicate_scan_roots verhindern doppelte Verzeichnis-Traversals.
- Fix: Slicer-Detection — Gecachte Erkennung mit Lock, neuer Status-Endpoint
/api/slicers/detect-status für asynchrones Polling.
- Fix: Setup-Complete —
setup-complete setzt nicht mehr blind shortcut_offered, Erststart-Flag bleibt korrekt gesetzt.
- File-Browser: Partielle Counts — Ordner-Dateianzahlen werden inkrementell angezeigt während der Prescan läuft.
v3.6.4
- Fix: Virtual Scroll Stale-View — Gallery zeigte nach Filter-Wechsel veraltete Einträge; Render-Zyklus wird jetzt zuverlässig zurückgesetzt.
- Fix: Thumbnail Cache-Bust — Neues Thumbnail wurde nicht geladen wenn Pfad identisch blieb; Query-Parameter erzwingt Browser-Reload.
- Fix: Sidebar Live-Refresh während Scan — Tags, Kategorien und Ordner aktualisieren sich jetzt alle 2 Sekunden während eines laufenden Scans.
- Fix: Scan-Fortschrittsanzeige — Spinner zeigt echte Dateianzahl und Punt-Animation statt nur Ladeindikator.
- Fix: Scan-ETA-Berechnung — ETA basiert auf verarbeiteten statt gezählten Dateien, EWMA-Dämpfung verhindert sprunghafte Zeitschätzungen.
- Fix: Kategorie-Keywords bei Erstellung — Beim Anlegen einer Kategorie werden Keywords sofort in die DB geschrieben (kein separater Speichern-Schritt nötig).
- Fix: Context-Menu Keywords Breite — Keyword-Chips im Kontextmenü auf max-width 400 px begrenzt, Umbruch verhindert Überlauf.
- Fix: C-Renderer Auto-Orient — Flächennormalen werden jetzt flächengewichtet gemittelt; äußerste Punkte bestimmen Orientierung zuverlässiger.
- Viewer Preload — Nächstes Modell in der Gallery wird im Hintergrund vorgeladen, Wechsel zwischen Modellen spürbar schneller.
- i18n: Fehlende Übersetzungen — Fehlende Keys in Tschechisch, Spanisch, Französisch und Italienisch nachgetragen.
v3.6.3
- Feature: Objekte automatisch gruppieren — Neuer Toggle in Einstellungen (Darstellung) steuert ob 3MF-Objekte standardmäßig gruppiert angezeigt werden.
- Fix: Viewer-Thumbnail-Aktualisierung — Gallery-Card Vorschaubild wird nach dem Laden im Viewer korrekt aktualisiert.
v3.6.2
- Fix: 3MF Multi-Model-Crash — HTTP 500 bei 3MF-Dateien mit mehreren
<model>-Elementen (z.B. Bambu Studio) behoben. XML-Parser akkumuliert Transforms korrekt.
- Fix: Viewer-Thumbnails nach Analyse — Vorschaubilder blieben nach
analyzeFile() erhalten (Folgefix zu v3.6.1).
- Fix: ResizeObserver null-crash — Crash nach Viewer-Schließen wenn Observer auf entferntes DOM-Element zeigte.
v3.6.1
- Fix: scan_workers Default — Standard-Arbeiterzahl in API-Responses und Frontend-Fallbacks von 2 auf 4 korrigiert.
- Fix: show_ratings Wizard — Fehlender Import in
viewer.js verhinderte, dass die Bewertungs-Einstellung aus dem Setup-Wizard korrekt angewendet wurde.
- Fix: Path-Import scanner_routes — Fehlender
Path-Import in scanner_routes.py verursachte HTTP 500 bei /api/thumbnails/pics.
v3.6.0
- Multi-Process-Konsolidierung —
server.py ist jetzt reine App-Factory, Single-Process-Modus entfernt. scanner.py (monolithisch) gelöscht — alle Scanner-Funktionen laufen ausschließlich im eigenen Prozess.
- Default-Fixes (Session 86) — Default-Werte für fehlende Einstellungen korrigiert, GCode-Handling stabilisiert, Pending-Prints-Logik robuster.
- i18n-Erweiterungen — Neue Übersetzungsschlüssel für GCode- und Druck-Dialoge in allen Sprachen (de, en, cs, es, fr, it).
- Altlasten-Bereinigung — Mockups, Test-Artefakte, temporäre Dateien und veraltete Dokumentation entfernt.
v3.5.0
- Splash-Screen — Animierter Ladebildschirm mit Logo-Rise-Animation, Fortschrittsringen und 4 Initialisierungs-Checkmarks (Variante D, ADR-079).
- Welcome-Screen Redesign — Neues Two-Panel Sidebar-Dashboard-Layout mit Zuletzt-geöffnet-Liste, Schnellstatistiken und aktivem Scan-Widget (ADR-077, Variante C).
- Viewer-Performance — AbortController für Fetch-Requests, dispose() gegen VRAM-Leak, analyzeFile-Deduplizierung und navigateViewerFile-Debounce (150 ms).
- Globale Scan-ETA — Rolling-Window-Algorithmus (70 % Recent / 30 % Overall) schätzt verbleibende Scan-Zeit zuverlässiger bei variablen Dateigeschwindigkeiten.
- PERF-03: computeVertexNormals entfernt — Keine redundante Normalenberechnung nach Binary-STL-Import mehr — Viewer-Ladezeit deutlich reduziert.
- PERF-04: galleryFileMap — 33×
Array.find() in 7 JS-Dateien auf O(1)-Map-Lookups umgestellt.
- PERF-05 / PERF-07 — Non-ASCII StreamingResponse für Datei-Downloads,
gc.collect() nur alle 50 Dateien statt pro Datei.
v3.4.5
- Code-Bereinigung & Optimierung — Frontend-Cleanup, Galerie-/Backend-Deduplizierung, Startup-Performance-Verbesserungen und 10 Bugfixes aus der Codex-Session.
- Inkrementelle Galerie-Updates —
file_change_log-Tabelle ermöglicht gezielte Aktualisierungen einzelner Karten statt vollständiger Galerie-Neuladezyklen.
- Scan-Polling optimiert — Umfangreiches Refactoring von
scan-poll.js — effizientere Zustandsmaschine, weniger unnötige Server-Anfragen.
- Unicode-Pfad-Fix — Thumbnails für Dateien mit nicht-ASCII-Zeichen im Pfad (chinesische Zeichen, Emojis) werden jetzt korrekt generiert.
- prune_file_change_log — Automatisches Bereinigen veralteter Änderungseinträge verhindert unbegrenztes Wachstum der Log-Tabelle.
- Settings-Regression behoben — Einstellungs-Regression aus vorangegangenen Refactoring-Sessions behoben.
- gallery-query.js — Neues Modul kapselt alle Galerie-Abfrage-Logik und reduziert Kopplung zwischen Frontend-Modulen.
v3.4.4
- pytest Test-Suite — 380+ automatisierte Tests aus den TB-Spezifikationen — vollständige Abdeckung aller API-Endpoints und Scanner-Funktionen.
- Scanner Performance — STL Batch-Rendering, paralleles SHA-256-Hashing und
as_completed() — Scan-Geschwindigkeit bei großen Bibliotheken deutlich verbessert.
- IPC Monkey-Patch Fix — Scanner-Logs kamen im Multi-Prozess-Modus seit v3.0.0 nie beim API-Prozess an — IPC-Bridge in
scanner_main.py korrekt gepatcht.
- Unbegrenzter Log-Buffer — Scanner-Log-Buffer von 500-Zeilen-Ring auf 100 MB umgestellt — kein Log-Verlust mehr bei langen Scans.
- Default-Keywords — Frische Datenbank erhält vorbelegte Standard-Kategorien mit passenden Keywords für Auto-Tagging.
- STEP/F3D Badge-Farben — Badge-Farben für STEP und F3D konsistent mit Sidebar und anderen Dateitypen.
- Loop-Protection Remote-View — Endlosschleifen-Schutz verhindert Remote-Connect im Remote-Viewer-Modus.
- scan_workers Default 4 — Standard-Anzahl Scanner-Worker von 2 auf 4 erhöht für bessere Parallelisierung.
v3.4.2
- Scanner Performance — SHA-256-Hashing läuft jetzt parallel in Worker-Threads mit
as_completed() — Scan-Geschwindigkeit bei vielen Dateien deutlich verbessert.
- Log-Buffer unbegrenzt — Scanner-Log-Buffer von 500-Zeilen-Ring auf 100 MB umgestellt — kein Log-Verlust mehr bei langen Scans.
- IPC-Bridge Log-Buffer — IPC-Bridge nutzt ebenfalls unbegrenzten Log-Buffer — konsistentes Verhalten im Multi-Prozess-Modus.
- Default-Keywords — Frische Datenbank erhält jetzt vorbelegte Standard-Kategorien mit passenden Keywords.
- STEP/F3D Badge-Farben — Badge-Farben für STEP und F3D sind jetzt konsistent mit den anderen Dateitypen.
- Loop-Protection Remote-View — Endlosschleifen-Schutz im Remote-Viewer-Modus implementiert.
- pytest Test-Suite — 357+ automatisierte Tests aus den TB-Spezifikationen — vollständige Abdeckung aller API-Endpoints.
v3.4.1
- STEP/STP Thumbnail-Fix — Fehlender
sys-Import im Thumbnail-Generator behoben — STEP-Dateien werden jetzt korrekt gerendert.
- Viewer leere Mesh Fix — STEP und F3D zeigen jetzt das Thumbnail statt „Empty mesh“ im 3D-Viewer.
- /analyze Endpoint STEP/F3D — Thumbnail-Regenerierung funktioniert jetzt auch für STEP- und F3D-Dateien.
- isNonMesh-Flag Fix — STEP und F3D werden nicht mehr als „fehlerhaft“ markiert — korrekte Darstellung in der Gallery.
- Auto-Tag Tab-Index Fix — Settings-Tab-Navigation nach Plugin-Entfernung korrigiert.
v3.4.0
- BREAKING: Plugin-System entfernt — STEP/STP und F3D sind jetzt native Dateitypen — kein Plugin-Store, keine externe Abhängigkeit mehr.
- STEP/STP nativ — STEP- und STP-Dateien direkt im Scanner erkannt (cascadio → OBJ → obj_thumb Thumbnail-Pipeline).
- Fusion 360 (.f3d) nativ — F3D-Dateien werden direkt vom Scanner verarbeitet — eingebettetes Vorschaubild wird extrahiert.
- Sidebar-Filter für STEP und F3D — Neue statische Schnellfilter wie STL/3MF/OBJ, basieren auf filetype-Spalte.
- Auto-Tag Settings-Tab Fix — Tab-Index in den Settings nach Plugin-Entfernung korrigiert.
- 1082 Zeilen Plugin-Code entfernt — 19 Dateien bereinigt, kein toter Code mehr.
v3.3.30
- LAN-Sync Browser-Transfer — Import/Move/Batch läuft jetzt direkt browser-seitig — behebt Subnetz-Problem wenn Client und Server unterschiedliche Netze nutzen.
- LAN-Sync Multi-Peer History — History-Liste ohne Duplikate, einzelne Einträge löschbar.
- STEP/STP-Filter repariert — Nutzt jetzt Plugin-Filter statt filetype — Dateien werden wieder korrekt angezeigt.
- Virtual-Scroll Flackern behoben — Thumbnails flackern beim Scrollen nicht mehr.
- 3MF eingebettete Bilder bevorzugt — Eingebettetes Vorschaubild aus 3MF wird als Thumbnail genutzt statt C-Renderer.
- Defender-Ausnahme Live-Check — Bestätigungsbutton zeigt live ob die App-Ausnahme aktiv ist.
- Animierte GIF/WebP aus 3MF — Animierte Vorschaubilder aus 3MF-Dateien werden in Gallery und Viewer unterstützt.
- Model-Picture-Listing — Kein 404-Console-Rauschen mehr beim Abrufen von Modell-Bildern.
v3.3.29
- LAN-Sync Subnet-Fix — Sync-Filter holt Hashes direkt vom Browser statt über Server-Proxy — löst „Connection refused“ bei verschiedenen Subnetzen.
- Multi-Peer History — LAN-Sync zeigt alle zuletzt verbundenen Clients, einzeln entfernbar.
- Defender-Ausnahme Bestätigung — Grüne Bestätigung in den Experten-Settings wenn die App-Ausnahme aktiv ist.
v3.3.28
- GCode-Counter SQL-Fix —
gcode_version-Bedingung entfernt — alle eingebetteten GCode-Archive werden wieder korrekt gezählt.
- Plugin-Thumbnail-Persistenz — Thumbnail-Pfad bleibt erhalten wenn ein Plugin-Hook kein neues Bild liefert, aber das PNG bereits auf Disk liegt.
- LAN-Sync Filter-Zähler — Nutzt jetzt
state.galleryFiles statt DOM-Karten-Zählung — zeigt korrekte Anzahl auch bei Virtual-Scroll.
- Defender-Ausnahme Statusanzeige — Grünes Häkchen in den Settings bestätigt erfolgreiche Registrierung der App-Ausnahme.
v3.3.27
- GCode-Archiv Counter repariert — Sidebar zeigte 0 statt der korrekten Anzahl eingebetteter GCode-Dateien (zu strenge SQL-Bedingung in routes/folders.py).
- Plugin-Thumbnail-Pfad Fix — Thumbnail-Pfad wurde nicht gesetzt wenn ein Plugin-Hook kein Bild liefert, obwohl das PNG bereits auf Disk existiert.
- Remote-Banner Sync-Filter — Zählt jetzt korrekt alle Dateien über state.galleryFiles statt nur sichtbare DOM-Karten.
v3.3.26
- Multi-Select Batch-Import — Im Remote-Modus können jetzt mehrere Dateien gleichzeitig ausgewählt und importiert werden (FAB-Button, orange Markierung).
- Import-Flow repariert — Direkt-Insert in die Datenbank statt Rescan — Tags, Ratings und Favoriten bleiben beim Import erhalten.
- Thumbnail-Transfer — Vorschaubilder werden beim Remote-Import als Base64 übertragen und sofort angezeigt.
- Plugin-Dateien beim Import — STEP- und F3D-Dateien werden direkt in die jeweilige Plugin-DB eingefügt.
- Defender-Encoding-Fix — Ausnahme-Registrierung nutzt jetzt UTF-8 statt cp1252 — verhindert Fehler bei Sonderzeichen im Pfad.
v3.3.25
- Import vereinfacht — Datei-Import nutzt jetzt 1:1-Kopie + Rescan statt manuellen DB-Inserts — zuverlässigere Indexierung aller Dateitypen.
- Alle Dateitypen beim Import — STL, 3MF, OBJ, STEP, F3D und STP werden jetzt vollständig unterstützt.
- Import-Ordner ausserhalb von data/ — Verhindert falsche Scanner-Zuordnung bei importierten Dateien.
- Sauberer Shutdown — Multi-Prozess-Modus beendet alle Kind-Prozesse sauber via
taskkill /T auf Windows.
- Auto-Refresh nach Remote-Import — 5-Sekunden-Polling und doppelter Refresh bei Rückkehr sorgen für sofortige Anzeige importierter Dateien.
v3.3.24
- Batch-Export mit Plugin-Dateien — STEP, F3D und STP werden beim Batch-Export jetzt berücksichtigt; Plugin-DBs werden abgefragt.
v3.3.23
- Auto-Refresh lokale Instanz — Neue Dateien werden alle 5 s automatisch erkannt und Gallery sowie Sidebar aktualisiert.
- Doppelter Refresh nach Remote-Rückkehr — Nach dem Verlassen der Remote-Ansicht werden Thumbnails mit 3 s und 8 s Verzögerung nachgeladen, damit alle generierten Thumbnails korrekt angezeigt werden.
v3.3.22
- Ordner-Kontextmenü im Remote-Modus —
showFolderCtx wird jetzt korrekt auf window exportiert — Kontextmenü in der Sidebar funktioniert im Remote-Modus wieder.
v3.3.21
- Batch-Import via Sidebar — Ganze Ordner können per Kontextmenü im Remote-Modus auf einmal importiert werden.
- Export-Folder-Endpoint — Neuer
POST /api/export-folder-to-remote Endpoint mit Subfolder-Unterstützung für Ordnernamen-Erhaltung.
- Verschieben markiert Remote-Dateien — Beim „Verschieben“ werden Quelldateien auf der Remote-Seite als hidden gesetzt statt gelöscht.
v3.3.20
- Netzwerk-Warnung deaktiviert — LAN-Zugriffe sind gewünscht — die Warnung beim Zugriff von fremden IPs wurde vollständig entfernt.
- Sofortiger Thumbnail-Scan nach Import — Importierte Dateien werden direkt in einem Background-Thread verarbeitet, kein Warten auf den nächsten Scan-Zyklus.
- Direkt zur Gallery bei Remote-Zugriff —
?local= und ?direct=1 Parameter umgehen den Welcome-Screen und leiten direkt zur Gallery weiter.
v3.3.19
- Remote-Modus Startup-Fix — Sidebar, Tags und Kategorien laden korrekt beim Remote-Zugriff (normaler Startup-Flow statt setTimeout-Hack).
- Zurück-Button Fix — Nutzt Original-URL (
?home=) statt LAN-IP, verhindert Origin-Wechsel im Browser.
- Import-Fix — Importvorgang setzt
setup_complete und registriert Library-Ordner korrekt in der Config.
- Netzwerk-Warnung — Warnung wird unterdrückt wenn LAN-Peers bereits vorhanden sind.
- Kontextmenü-Reihenfolge — Import-Aktion erscheint vor Verschieben im Kontextmenü.
v3.3.18
- Remote-Modus Fix — Welcome-Wizard wird bei Aufruf mit
?local=-Parameter übersprungen und direkt zur Gallery weitergeleitet.
v3.3.17
- LAN Remote View — Andere STL-Gallery-Instanzen im Netzwerk anzeigen, Dateien zwischen Instanzen importieren oder verschieben. Popover-UI mit Verbindungstest, Sync-Filter und Fortschrittsanzeige.
- CORS-Middleware — Server akzeptiert nun Cross-Origin-Anfragen, damit Remote-Instanzen direkt auf die API zugreifen können.
- Scanner Export-Fix —
scanner/__init__.py exportiert jetzt alle benötigten Symbole korrekt (inkl. get_scanner_status).
- Neue API-Endpunkte —
/api/remote-hashes (Hash-Abfrage), /api/export-to-remote (Push zu anderer Instanz), /api/import-file-raw (Dateiempfang).
v3.3.16
- GCode-Archiv-Filter entkoppelt — Neue DB-Spalte
has_gcode_archive speichert ob eine 3MF-Datei ein GCode-Archiv (printerking.app/-Ordner im ZIP) enthält. Filter «Mit GCode-Archiv» und «Gedruckt» sind jetzt unabhängig voneinander.
v3.3.15
- IPC-Protokoll-Fix — Startup-Meldungen gingen auf stdout statt stderr und störten das JSON-Lines IPC-Protokoll. Behebt «invalid JSON»-Warnungen im Release-Build.
- APP_DIR NameError behoben — Fehlender Import in
/api/health führte zu wiederkehrendem NameError im Multi-Prozess-Modus.
v3.3.14
- Defender-Ausnahme-Warnung — Wenn die automatische Defender-Ausnahme nicht gesetzt werden konnte, erscheint in den Experten-Einstellungen ein Hinweis mit dem PowerShell-Befehl zum manuellen Ausführen (klickbar zum Kopieren).
- Health-Endpoint: app_dir —
/api/health liefert jetzt den App-Verzeichnis-Pfad für den PowerShell-Befehl im Frontend.
v3.3.13
- Windows Defender-Ausnahme (automatisch) — Beim ersten Start wird der App-Ordner per PowerShell als Defender-Ausnahme registriert. Verhindert 10–20s Verzögerung pro Datei beim Scannen (Defender scannte
stl_thumb.exe bei jedem Aufruf). Läuft einmalig im Hintergrund, Config-Flag verhindert Wiederholung.
v3.3.12
- OneDrive Cloud-Erkennung (3-stufig) — PINNED-Dateien werden normal verarbeitet, UNPINNED-Dateien (cloud-only) übersprungen, ambige Fälle mit 0,5s Lese-Probe verifiziert. Behebt den Performance-Einbruch (~5/s → ~0,2/s) bei OneDrive-Ordnern.
v3.3.11
- GCode-Archiv-Filter revertiert — Der
gcode_version > 0 Check aus v3.3.9 war zu aggressiv: gcode_version wird in der DB nie korrekt gesetzt (bleibt immer 0), wodurch alle GCode-Archiv-Einträge unsichtbar wurden. Filter ist zurück auf embedded_in_3mf = 1.
v3.3.10
- Update-Shutdown-Fix — Der Update-Prozess beendete nach der Installation nur den API-Prozess via
os._exit(0) — Supervisor, Scanner und Watcher liefen weiter. Jetzt sendet der Updater zuerst shutdown_requested via IPC an den Supervisor, der alle Kindprozesse sauber beendet.
v3.3.9
- GCode-Archiv-Filter-Fix — Dateien ohne echten GCode-Inhalt wurden im GCode-Archiv-Filter angezeigt, wenn nur
embedded_in_3mf = 1 gesetzt war (z.B. nach Re-Download). Alle betroffenen Queries prüfen jetzt zusätzlich gcode_version > 0.
v3.3.8
- Reprint aus 3MF-Druckaufträgen — “Nochmal drucken” im Druckauftrag-Overlay funktioniert jetzt auch für Prints aus 3MF-Dateien. Neuer Endpoint
POST /api/files/{id}/reprint mit version_index als Fallback wenn keine Datenbank-ID vorhanden ist.
v3.3.7
- Updater-Templates externalisiert — Eingebettete Batch/Shell-Strings aus dem kompilierten Binary in separate Template-Dateien (
static/updater_template.bat, static/updater_template.sh) ausgelagert. Verhindert Windows-Defender-Fehlalarm (Wacatac-Heuristik) durch eingebettete Skript-Strings.
v3.3.6
- OneDrive-Kompatibilität — Cloud-Placeholder-Erkennung entfernt. OneDrive-verwaltete Dateien im Downloads-Ordner wurden fälschlicherweise als nicht-lokal übersprungen. Dateien werden jetzt immer verarbeitet; echte Lesefehler greifen weiterhin den normalen Error-Handler.
v3.3.5
- Bambu-Slicer Plugin bereinigt — Verwaistes
bambu-slicer/-Verzeichnis aus Build-Output entfernt. Das Plugin wurde nie eingeführt und verblieb als Artefakt im Nuitka-Cache.
v3.3.4
- Cache-Busting für statische Assets —
serve_index() hängt ?v=VERSION an alle lokalen /static/ CSS- und JS-Referenzen an. Browser laden nach Updates automatisch die neuen Dateien statt veraltete Versionen aus dem Cache zu nutzen.
v3.3.3
- Bewertungssystem nach Setup-Wizard — Nach Abschluss des Setup-Wizards wurde die Bewertungssystem-Einstellung nicht sofort übernommen.
loadSettings() wird jetzt nach wizard-finish aufgerufen, damit Rating-Anzeige und UI-State direkt synchronisiert sind.
v3.3.2
- Auto-Update Pfade korrigiert — Der Updater verwendete nach dem Launcher/App-Redesign (v3.0.17) noch alte Pfade.
root_dir und data_dir werden jetzt korrekt getrennt, stl-gallery-core.exe wird als Prozess überwacht, robocopy schützt nur noch data/ statt alter DB/Thumbnails-Ordner.
v3.3.1
- Chart.js Ladefix — Fehlendes schließendes
</script>-Tag beim Three.js-Import verhinderte das Laden von Chart.js und damit die Dashboard-Diagramme. Behoben.
v3.3.0
- Intelligentes Auto-Tagging — Komplett neues Kategorie-System: Keywords pro Kategorie definieren, Dateien werden automatisch zugeordnet. Interaktive Chip-Eingabe mit Enter, × zum Entfernen und Doppelklick zum Bearbeiten. Änderungen greifen sofort auf die gesamte Bibliothek.
- Word-Cloud Vorschläge — Analysiert alle Dateinamen der Bibliothek und zeigt häufige Begriffe als klickbare Vorschlagswolke. Per +-Button einer Kategorie zuordnen — Auto-Tag und Cleanup laufen automatisch im Hintergrund.
- GCode-Versionierung — Mehrere GCode-Versionen pro 3MF-Datei archivieren (v1, v2, v3…). Jeder Druck verweist auf seine spezifische Version. Ohne neuen Upload wird automatisch die letzte Version verlinkt. Bestehende Dateien werden lazy migriert.
- Bulk-Untag per Rechtsklick — Rechtsklick auf eine Datei: “Alle Tags entfernen” / “Alle Kategorien entfernen”. Rechtsklick auf eine Kategorie oder einen Tag in der Sidebar: “Alle Dateien entfernen” mit Bestätigungsdialog.
- Filament-Farbname-Korrektur — RGB-Distanz-Vergleich zwischen GCode-Hex und Bambu Lab Datenbank. Bei grosser Farbabweichung wird der falsche Name automatisch verworfen statt falsch angezeigt.
- 6 Sprachen komplett — Alle neuen Features vollständig in Deutsch, Englisch, Spanisch, Französisch, Italienisch und Tschechisch übersetzt.
v3.2.2
- OneDrive Cloud-Placeholder — Scanner überspringt jetzt Dateien die nur als Cloud-Platzhalter lokal vorhanden sind (nicht heruntergeladene OneDrive-Dateien).
- Scanner Error-Logging — Fehler im Scanner-Orchestrator werden jetzt vollständig mit Stack-Trace protokolliert statt still ignoriert.
- Gallery-Refresh Race Condition — Fix: Parallele Ladeanforderungen in der Galerie konnten sich gegenseitig unterbrechen und zu inkonsistenten Anzeigezuständen führen (
_bgLoadCancel-Guard in virtual-scroll.js).
v3.2.1
- Dark-Mode Thumbnail-Fix — Thumbnails wurden im Dark-Mode farblich invertiert. CSS-Filter
invert() aus Gallery- und Viewer-Styles entfernt.
v3.2.0
- Plugin-System — Erweiterbare Architektur für neue Dateiformate. STEP-Plugin (OpenCascade Tessellierung) und Fusion 360 F3D-Plugin als Vorlagen.
v3.1.0
- async def-Audit (T-046) — 25 blockierende Handler in 9 Route-Dateien auf sync
def umgestellt; FastAPI führt diese automatisch im ThreadPool aus — kein Event-Loop-Blockieren mehr möglich.
- Viewer-Geisterkarte behoben — Im Viewer geöffnete Datei erschien beim Filterwechsel als Karte in allen Filtern. Datei verbleibt jetzt nur noch in der internen Map für Viewer-Funktionen.
- Plugin-Filter-Kontextmenü — Rechtsklick auf dynamisch gerenderte Plugin-Dateifilter (F3D, STEP) in der Sidebar zeigte kein Menü. Beide Rendering-Pfade binden jetzt
contextmenu-Handler.
v3.0.21
- Pfad-Exclusion-Liste — Ordner können in den Einstellungen von der Bibliothek ausgeschlossen werden; Scanner und Watcher überspringen sie vollständig.
- Kontextmenü-Bugfix — HTML-Items (Slicer-Menü) hatten doppelte Click-Handler wenn Kontextmenü mehrmals geöffnet wurde —
data-ctx-action-Attribut behebt das selektiv.
- Als gesehen markieren — Kontextmenü-Eintrag entfernt das “Neu”-Ribbon sofort und dekrementiert den Sidebar-Zähler ohne Seiten-Reload.
- Print-Overlay Refactoring —
openPrintVersion() liest Druckdaten immer direkt aus der 3MF-Datei; Index-basiertes Positions-Matching statt fehleranfälliger Timestamp-Vergleiche.
v3.0.20
- Print-Daten aus 3MF — Druckdaten werden direkt aus
printerking.app/print_log.json in der 3MF-Datei gelesen — kein DB-Timestamp-Matching mehr nötig.
- Neuer Endpoint /print-data —
GET /api/files/{id}/print-data liefert Druckprotokoll-JSON direkt aus der 3MF-Datei.
- Plate-Thumbnails per Index —
GET /api/files/{id}/plate-preview/{index} liefert Plate-Vorschaubilder nach Index statt Dateiname.
- openPrintVersion() — Ersetzt
openPrintOverlayForExisting(); lädt Druckprofil-Overlay direkt über die 3MF-Datei.
- Index-basierte History-Navigation — History-Modal nutzt Index-basierte Navigation statt DB-IDs für zuverlässigere Darstellung.
v3.0.19
- GCode-Versionierung — Version-Badge, “Neuen GCode”- und “X Versionen”-Buttons in der Topbar sowie ein großes History-Modal für alle GCode-Versionen.
- Print-Queue — Mehrere ausstehende Drucke werden als Warteschlange im minimierten Druckprotokoll-Tab angezeigt.
- Timestamp-Match Fix —
printed_at-Vergleich toleriert jetzt Millisekunden- und Timezone-Unterschiede beim Abgleich von Druckeinträgen.
- Druckhistorie bereinigt — Redundante Druckhistorie-Ansicht aus dem Viewer entfernt; das neue Druckprofil-Overlay übernimmt diese Funktion.
v3.0.18
- Datei im Explorer markieren — “Im Explorer anzeigen” selektiert jetzt die Datei direkt statt nur den Ordner zu öffnen.
- Kontextmenü bereinigt — “Herunterladen”-Eintrag aus dem Galerie-Kontextmenü entfernt; lokale App braucht keinen Browser-Download.
- Tags & Kategorien als Submenüs — Tags und Kategorien im Galerie-Kontextmenü sind jetzt aufklappbare Untermerüs für ein kompakteres Erscheinungsbild.
- Linux app/-Struktur — Linux-Build nutzt jetzt dieselbe
app/-Ordnerstruktur wie Windows; Shell-Script-Launcher setzt Berechtigungen automatisch.
v3.0.17
- Aufgeräumte Ordnerstruktur — Nur noch eine einzige EXE im Root-Ordner sichtbar; alle Runtime-Dateien liegen in
app\. Weniger Ablenkung beim Erststart.
- C-Launcher — Schlanker nativer Launcher (~15 KB) startet den Supervisor aus
app\, setzt PATH und STL_DATA_DIR Umgebungsvariable automatisch.
- STL_DATA_DIR Unterstützung — Pfad für
data\ (Datenbank, Config, Thumbnails) kann über Umgebungsvariable flexibel gesetzt werden.
v3.0.16
- Zentrales Kontextmenü-System — 7 separate Menüs zu einem wiederverwendbaren System zusammengeführt; konsistentes Design, einheitliche Tastaturnavigation.
- Neue Kontextmenü-Aktionen — Herunterladen und “Im Explorer öffnen” für Ordner direkt aus dem Kontextmenü; erweiterte Pin-Aktionen in der Sidebar.
- Thumbnail-Regenerierung per Kontextmenü — Rechtsklick auf Tag, Kategorie oder Dateityp löst gezielte Thumbnail-Regenerierung für die jeweilige Gruppe aus.
- Dark Theme: Navy-Blau — Hintergrundfarben im Dark Mode von Grau auf Navy-Blau umgestellt für angenehmeres Erscheinungsbild.
- SmartScreen-Hinweis & Linux-Anleitung — Download-Seite erklärt Windows SmartScreen-Warnung und zeigt Linux-Startanleitung mit chmod-Befehl.
v3.0.15
- Scanner-Skip-Fix — Dateien ohne Thumbnail wurden beim Scan fälschlicherweise übersprungen; Skip-Logik prüft jetzt korrekt ob Thumbnail vorhanden ist.
- Thumbnail-Regenerierung per Kontextmenü — Rechtsklick auf Tag oder Kategorie in der Sidebar löst Thumbnail-Regenerierung für alle Dateien dieser Gruppe aus.
- SmartScreen-Hinweis — Download-Seite erklärt Windows SmartScreen-Warnung und zeigt Linux-Startanleitung mit chmod-Befehl.
v3.0.14
- Sanfte Thumbnail-Regenerierung — Vorhandene Thumbnails bleiben sichtbar bis neue fertig sind; kein Placeholder-Flackern mehr beim Regenerieren.
- Viewer-Persistenz bei Gallery-Reload — Background-Watcher-Poll räumte Gallery-State leer und ließ den Viewer ohne Modell; aktuell geöffnetes File wird jetzt gesichert.
- Pending-Prints-Restore nach Neustart — Minimierten Print-Overlay nach App-Restart korrekt wiederherstellen; Overlay-Inhalt wird bei leerem Panel per API neu befüllt.
- core/startup.py Refactoring — 6 duplizierte Startup-Funktionen aus server.py und api_main.py in zentrales Modul extrahiert (T-045).
- Settings-Bereinigung — tmf_thumb_mode und thumb_quality entfernt; Defaults hardcoded (ADR-060). Info-Tooltips für alle 10 Settings-Seiten.
- Sidebar-Schriftfarben — Folder-Tree-Labels, Tag-Badges und Trash-Count auf einheitliches --t1 gesetzt.
- Linux-Build-Anleitung — Download-Seite zeigt chmod-Anweisung und SmartScreen-Hinweis für Windows-User.
v3.0.13
- Filter-Race-Condition behoben — Schnelle Filterwechsel konnten veraltete Ergebnisse anzeigen; AbortController durch Pending-Reload-Pattern ersetzt.
- Filter-Kontamination gefixt — Background-Loader in virtual-scroll.js überschrieb aktive Filter nicht mehr, wenn ein neuer Ladevorgang startete.
- Debug-Logging entfernt — Konsolenausgaben aus gallery.js für Produktions-Release bereinigt.
v3.0.12
- PWA-Integration — App ist jetzt als eigenständiges Fenster installierbar (Progressive Web App) — kein Browser-Chrome, echter App-Feel.
- Web App Manifest —
manifest.json und Service Worker (sw.js) ermöglichen Installation über Browser-Prompt auf Windows und Android.
- Install-Button im Welcome-Screen — Browser-nativer Installations-Dialog ersetzt den Desktop-Shortcut-Workflow.
v3.0.11
- Code-Cleanup — Obsolete Hilfsskripte (distribution.py, _mkzip.py, _tail.py) entfernt und Scanner-Imports bereinigt.
- CSS-Fixes — Diverse visuelle Korrekturen in Modals, Settings, Viewer, Welcome-Screen, Toast und Gallery.
- Frontend-Bereinigung — Auto-Tag, Settings, Virtual-Scroll und App-Initialisierung optimiert.
v3.0.10
- Build-Report — Nuitka-Builds erzeugen jetzt automatisch einen HTML-Bericht mit Build-Details und öffnen ihn direkt in Edge.
- Inkrementelle Builds — Nuitka-Cache bleibt erhalten — Folgebuilds kompilieren nur geänderte Module und sind deutlich schneller.
- Linux-Build — Download-Seite zeigt vollständige Linux-Anleitung mit Entpack- und Starthinweisen.
v3.0.9
- Heartbeat-Fix — Metrics-Events setzen jetzt den Heartbeat-Timer zurück — verhindert fälschlichen Auto-Shutdown nach 300s Inaktivität.
- Lazy-Imports — Scanner-Imports in core/config.py von Modul-Ebene in Funktionen verschoben — behebt Nuitka-Fehler im Supervisor-Prozess beim Build.
- Linux-Build — Download-Seite mit vollständiger Linux-Anleitung und SmartScreen-Hinweis für Windows.
v3.0.8
- Multi-Prozess Bugfixes — Scanner meldet fehlende C-Renderer jetzt korrekt an den Supervisor (vorher Crash). Watcher-Prozess nutzt korrekte 64-Bit Handle-Typen für Windows-Prozess-APIs.
v3.0.7
- Folder-Tree Counts — Ordner mit Plugin-Dateien (STEP, STP, F3D) zeigten im Ordner-Baum fälschlicherweise 0 an — jetzt werden Plugin-Dateien korrekt mitgezählt.
v3.0.6
- Plugin-Filter Revert — Backend-Änderungen an folders.py wurden zurückgenommen; der Plugin-Filter zeigte nach dem Update fälschlicherweise 0 Ergebnisse.
- Plugin-Merge bei Ordner-Navigation — Die Frontend-seitige Zusammenführung von Plugin-Dateien beim Navigieren in Ordnern bleibt erhalten und funktioniert korrekt.
v3.0.5
- Plugin-Dateien in Ordner-Ansicht — STEP, STP und F3D Dateien erscheinen jetzt korrekt in der Ordner-Ansicht (vorher immer 0).
- Folder-Tree Counts korrigiert — Der Ordner-Baum zählt Plugin-Dateien jetzt mit ein.
- Sidebar Plugin-Counts — Die Anzahl der Plugin-Dateien in der Sidebar stammt jetzt aus der korrekten Plugin-Datenbank.
v3.0.4
- Streaming Pre-Check — Thumbnails starten jetzt sofort nach dem ersten Datei-Scan, ohne auf das vollständige Hashing aller Dateien warten zu müssen. Massiver UX-Gewinn bei 10.000+ Dateien.
v3.0.3
- Regenerate-Thumbs DB-Lock behoben — Bei 10.000+ Dateien führten Einzel-UPDATEs zu einem SQLite-Lock. Die Thumbnail-Pfad-Zurücksetzung läuft jetzt als Batch-UPDATE in einer einzigen Transaktion.
v3.0.2
- 3MF Lazy-Scan massiv beschleunigt — Beim Scan wird XML-Geometrie für 3MF-Dateien komplett übersprungen (images_only), nur eingebettete Vorschaubilder werden extrahiert.
- Scanner Poll-Intervall 10ms — Internes Poll-Intervall von 300ms auf 10ms reduziert, C-Renderer-Ergebnisse werden sofort erkannt.
- Frontend Scan-Poll 1000ms — Poll-Intervall von 2500ms auf 1000ms halbiert, Gallery-Reload-Throttle von 5000ms auf 2000ms reduziert.
- Toolbox in Experten-Einstellungen — Repair-Funktionen direkt in den Experten-Einstellungen integriert (2-Spalten-Grid).
- AppData im File-Browser ausgeblendet — AppData- und Application-Data-Ordner werden im Datei-Browser nicht mehr angezeigt.
v3.0.1
- Queue-Architektur revertiert — Instabile File-Queue-Implementierung entfernt, Rückkehr auf stabilen Pre-Queue-Stand.
- UTF-8 stderr Fix — Emoji-Zeichen in Ordnerpfaden verursachten keine UnicodeDecodeError-Abstürze mehr beim C-Renderer-Aufruf.
- AppData im File-Browser ausgeblendet — AppData- und Application-Data-Ordner werden im Datei-Browser nicht mehr angezeigt.
- Toolbox in Experten-Einstellungen — Repair-Funktionen direkt in den Experten-Einstellungen integriert (2-Spalten-Grid).
- Scanner Poll-Intervall 300ms → 10ms — Massiver Performance-Boost beim Scan-Fortschritt durch drastisch reduziertes Poll-Intervall.
v3.0.0
- Multi-Prozess-Architektur — STL Gallery läuft optional als 4 unabhängige Prozesse (Supervisor, API, Scanner, Watcher). Bei Prozess-Crash automatischer Neustart durch den Supervisor.
- Debug Monitor v2 — 4-Panel-Layout mit separaten Log-Streams pro Prozess, Farbkodierung nach Dateityp und Per-Prozess-RAM/CPU-Metriken.
- Dynamisches Plugin-Dateityp-System — Sidebar-Dateityp-Filter aus aktiven Plugins, konfigurierbaren Badge-Farben und kommaseparierten Filtern in der API.
- Drive Pre-Scan — Laufwerke werden beim ersten Start vorab gecacht, File-Browser-Counts erscheinen sofort.
- Event-Loop-Fix — Blockierende Filesystem-I/O-Calls in FastAPI async-Endpoints behoben (12+ Sekunden Freeze eliminiert).
v2.5.7
- Windows-Binaries korrigiert — v2.5.6 enthielt versehentlich Linux-ELF-Binaries statt Windows PE32+-Executables. Die C-Renderer (stl_thumb.exe, 3mf_thumb.exe, obj_thumb.exe) wurden korrekt unter Windows kompiliert.
- Auto-Orient Threshold-Sync — Die Schwellenwerte für die automatische Modell-Orientierung sind nun konsistent zwischen C-Renderer und JS-Viewer.
v2.5.6
- Auto-Orient Threshold-Angleichung — Die Schwellenwerte für die automatische Modell-Orientierung im C-Renderer wurden an die Werte des 3D-Viewers angeglichen. Thumbnails zeigen jetzt dieselbe Orientierung wie der Viewer.
v2.5.5
- Thumbnail-Integritätsprüfung — Beim Start werden alle Thumbnail-Pfade gegen die tatsächlichen Dateien auf der Platte geprüft. Fehlende Thumbnails werden zur Regenerierung beim nächsten Scan vorgemerkt.
v2.5.4
- WAL-Checkpoint vor Restart — Verhindert Datenverlust (fehlende Thumbnails, Re-Scan aller Dateien) nach Neustart über die Einstellungen.
v2.5.3
- Scan-Fortschritt mit ETA — Header zeigt während des Scans eine Fortschrittsbalken-Animation mit geschätzter Restzeit an.
- Header-Statistik bereinigt —
hdrStats zeigt nur noch Scan-Informationen, nicht mehr die redundante Gesamt-Dateianzahl (bereits in der Sidebar sichtbar).
v2.5.2
- Config-DB Konsistenzprüfung — Wenn
config.json zurückgesetzt wurde aber die Datenbank noch Ordner enthält, wird die Config automatisch aus der DB repariert. Der Setup-Wizard erscheint nach Updates nicht mehr fälschlicherweise.
v2.5.1
- Auto-Tag UI Verbesserungen — Sidebar-Filter Layout (Variante 1D), entfernbare Chips per Klick, „+“-Button zum manuellen Ergänzen von Tags und Kategorien pro Datei.
- Auto-Tag Toggle — „Bereits getaggte Dateien einbeziehen“-Toggle speichert sofort via
onchange ohne separaten Speichern-Button.
- 3MF Thumbnail-Schutz — Eingebettete Slicer-Thumbnails werden nicht mehr durch den C-Renderer überschrieben.
v2.5.0
- Auto-Tagging — Regelbasierte Tag- und Kategorie-Vorschläge basierend auf Dateinamen, Ordnerpfaden und 3MF-Metadaten. Modal mit Sidebar-Filter, Card-Grid und Konfidenzanzeige.
- Auto-Tag API — Neue Endpoints
/api/auto-tag/preview, /api/files/{id}/auto-tag und /api/auto-tag/apply für Einzel- und Sammelzuweisung.
- Settings-Integration — Eigene Auto-Tag Seite in den Einstellungen mit „Bereits getaggte Dateien einbeziehen“-Toggle. Kontextmenü-Eintrag „Auto-Tag vorschlagen“.
- 3MF Thumbnail-Fix — Eingebettete Slicer-Thumbnails werden nicht mehr durch den C-Renderer überschrieben.
v2.5.0
- Auto-Tagger — Neues Modul für regelbasierte Tag- und Kategorie-Vorschläge: analysiert Dateinamen, Ordnerpfade und Metadaten anhand eines DE/EN-Keyword-Mappings.
- API-Route
/api/auto-tag — Neuer Endpunkt liefert Vorschläge für ungetaggte Dateien; unterstützt Überschreib-Modus via auto_tag_overwrite-Setting.
v2.4.3
- Wizard Pre-Scan — Quick-Links und Datei-Counts werden bereits bei Wizard-Schritt 1 im Hintergrund geladen. Beim Öffnen des File-Browsers in Schritt 6 (Ordner-Auswahl) sind die Counts bereits gecacht und erscheinen sofort.
Wizard Pre-Scan: Ordner-Counts sofort verfügbar
v2.4.2
- OBJ Auto-Orient — OBJ-Dateien werden jetzt korrekt automatisch orientiert (identisch zu STL und 3MF). Zuvor fehlte der
auto_orient_model()-Aufruf in obj_thumb.c.
- Update-Checker Versionsanzeige — Alle Fallback-Versionstexte waren veraltet (2.2.0/2.3.1 statt 2.4.x). Der server-seitige Update-Check erkennt jetzt die korrekte aktuelle Version.
OBJ Auto-Orient Fix, Update-Checker Versionsanzeige korrigiert
v2.4.1
- Wizard Umlaute — Alle Texte im Setup-Wizard korrekt mit Umlauten (ö, ü, ä) statt ASCII-Ersatz.
- Wizard Drucker-Liste — Vollständige Liste mit 20+ Druckern (Bambu, Prusa, Creality, Anycubic, Voron, RatRig, Elegoo) + „Manuell“-Option — identisch mit den Einstellungen.
- Gallery-Button Position — „Gallery öffnen“-Button von unten links nach oben rechts verschoben (neben Theme-Toggle, auf Logo-Höhe).
Wizard Umlaute, Drucker-Liste vervollständigt, Gallery-Button oben rechts
v2.3.0
- First-Run Setup Wizard — Frische Installationen starten mit einem 11-Schritte-Wizard: 5 Intro-Schritte erklären die App, 6 Setup-Schritte richten Ordner, Slicer, Druckbett, Bewertungen und Desktop-Verknüpfung ein. Erscheint nur einmalig.
First-Run Setup Wizard (11 Schritte, einmalig bei frischer Installation)
v2.2.2
- Thumbnail Cache-Busting — Browser zeigt nach Rescan jetzt sofort aktualisierte Thumbnails statt gecachter Bilder.
Thumbnail-Cache nach Scan und Watcher-Ereignis erneuert
v2.2.0
- Settings-Redesign — Komplett neues Settings-UI im macOS Preferences-Stil: Icon-Grid Navigation, 11 Kategorien-Pages, Plugin-Store-Kacheln.
- Auto-Orient Thumbnails — C-Renderer orientiert Modelle automatisch auf die grösste flache Fläche. Thumbnails zeigen Modelle korrekt aufrecht.
- Standard-Sortierung — Neue Einstellung für Default-Sortierkriterium und -Richtung in der Gallery. Kontextabhängige Labels (z.B. „Neueste zuerst“).
- Supporter Wall — Neue Sektion auf der Website mit Live-Anbindung an Buy Me a Coffee. Zeigt Supporter mit Namen, Nachrichten und Coffee-Count.
Settings-Redesign, Auto-Orient, Standard-Sortierung, Supporter Wall, Drucker-Auswahl Fix
v2.1.5
- gcode.3mf Filter — Slicer-Exportdateien (.gcode.3mf) werden nicht mehr indexiert. Diese Dateien enthalten G-Code, keine 3D-Modelle.
v2.1.4
- Orphan-Cleanup — Gelöschte Dateien werden beim Rescan und vom Watcher automatisch aus der DB entfernt.
- Scroll-Fix — Gallery behält die Scroll-Position nach dem Löschen einer Datei.
- Sidebar-Labels — Druckernamen und Filter nutzen den vollen verfügbaren Platz.
- GCode-Metadaten vollständig — Speed, Profil und Geometrie-Daten in 3MF eingebettet (ADR-046).
Orphan-Cleanup, Scroll-Position, Sidebar-Spacer, gcode-meta rein aus 3MF
v2.1.3
- Plugin-System — Erweiterbare Architektur: Plugins werden automatisch erkannt und aktiviert. STEP/STP-Plugin mit OpenCascade Thumbnail-Generierung (34 MB, optional). Fusion 360 F3D-Plugin mit Zstandard-Support.
- 6 Dateiformate — STL, 3MF, OBJ nativ + STEP/STP und F3D via Plugins. Farbige Badges in Sidebar und Gallery.
- Thumbnail erneuern — Rechtsklick-Kontextmenü auf jeder Datei. 3MF-Modifier-Boxen werden nicht mehr als Solid gerendert.
- Druckprotokoll live aus 3MF — Notizen, Status und Druckdaten werden direkt aus der Datei gelesen (Source of Truth), nicht aus der DB.
- Watcher-Fix — Entfernte Ordner werden nicht mehr durch den File Watcher erneut indexiert.
Plugin Auto-Aktivierung (Blacklist), Recovery-Pass, Sidebar-Design, GCode-Karten vereinfacht
v2.1.2
- Gallery-Badge 🖨 N× — Druckanzahl pro Modell wird jetzt korrekt angezeigt
- Recovery-Pass für Druckdaten — fehlende Druckeinträge werden automatisch aus eingebetteten 3MF-Daten wiederhergestellt
print_count in /api/files/page, Recovery-Scan nach jedem Scan-Durchlauf
v2.1.1
- Druckprofil-Button im Viewer — Protokoll direkt einsehen und bearbeiten
- Sidebar-Badges — farbige Typ-Badges statt Emojis, synchron mit Einstellungen
- Fusion öffnen — F3D-Dateien direkt aus der Gallery starten
- Bugfixes — Plate-Preview, Notizen, Plugin-Thumbnails, uvloop-Crash
Plugin-Cleanup, Notiz-Speicherung in 3MF, Thumbnail-Recovery
v2.1.0
- 3MF als Single Source of Truth — GCode und Druckdaten direkt in die 3MF eingebettet (
printerking.app/)
- STL→3MF Konvertierung — STL-Dateien werden bei Druck automatisch in 3MF umgewandelt
- Rescan-Recovery — Druckdaten überleben DB-Verlust, Scanner rekonstruiert alles aus der 3MF
- Kein separater GCode-Ordner mehr — alles portabel in einer Datei
data/gcode entfernt, Filter auf embedded_in_3mf, Plate-Preview on-demand
v2.0.1
- Sidebar-Filter für Drucker, Filament und Düsengrösse — klickbar, aus GCode-Archiven aggregiert
- GCode-Karten-Farben — Drucker grün, Düse blau, konsistent mit Druckprotokoll
- Filament-Sektion zeigt nur Daten aus GCode-Archiven (nicht manuell erfasst)
- „Gedruckt“-Filter von Bewertungen entkoppelt — bleibt sichtbar wenn Bewertungen ausgeschaltet
Sidebar-Reihenfolge, Material→Filament-Umstellung, GCode-Pill-Farben
v2.0.0
- Command Center — neuer Startbildschirm mit Live-KPIs, Quick Actions und Activity Feed
- GCode-Archiv — .gcode.3mf hochladen, archivieren, nochmal drucken ohne neu zu slicen
- Fullscreen Druckprotokoll-Overlay mit Bento-Grid, Druckbett-Vorschau, allen Slicer-Einstellungen
- Bambu Lab Filament-Farbdatenbank — 70+ Farben automatisch erkannt
- Sidebar-Filter „Gedruckt“ und „Mit GCode-Archiv“
Command Center, GCode-Parser, Drag&Drop, Pending Prints, Linux Slicer-Fix
v6.7.13
- Neues Anwendungs-Icon — gestapelte Diamant-Layer auf Orange, überall ersetzt
Favicon, EXE-Icon, Welcome-Screen, Gallery-Header, Dashboard-Header, Website
v6.7.11
- SRI-Hash für Three.js CDN — verhindert Ausführung manipulierter Skripte
- escJs()-Funktion gegen XSS in onclick-Attributen (7 Module gehärtet)
- SHA256-Prüfung beim Auto-Update — manipulierte Downloads werden erkannt
- Dateigrössenlimit (500 MB) für read_bytes() bei Emoji-Pfaden
- Netzwerk-Warnung mit IP-Anzeige wenn externes Gerät auf den Server zugreift
- Updater prüft ob App nach Update gestartet wurde — Warnung bei Defender-Blockade
Security-Hardening: SRI, XSS-Schutz, Update-Integrität, Memory-Limit, Zugriffs-Erkennung, Startprüfung
v6.7.10
- Auto-Update jetzt auch für Linux — Shell-Skript-Updater mit rsync/cp, PID-Tracking
- Gallery-Klick: Datei wird im Hintergrund geladen, Viewer öffnet erst mit fertigen Daten
- Fix: Update-Banner zeigt wieder prominente Meldung — Klick startet direkt den Update-Prozess
Pre-Fetch nutzt Viewer-Cache, Linux-Updater mit rsync/cp-a Fallback
v6.7.4
- Integriertes Auto-Update für Windows — neue Version erkennen, bestätigen, automatisch installieren & neustarten
- Download-Fortschrittsbalken mit Echtzeit-Prozentanzeige (SSE-Stream)
- „Nach Updates suchen“-Button in den Einstellungen
- Fix: Dashboard KPI-Label zeigt jetzt korrekt „STL / 3MF / OBJ“
- Gallery: Ladeanimation beim Klick — Thumbnail blurrt, Spinner zeigt Ladezustand
Sicheres Update: robocopy /E schützt Datenbank, Thumbnails & Einstellungen
v6.6.5
- Fix: 3MF-Viewer crashte bei Dateien mit 0 Objekten (TypeError auf undefined meshData)
- Fix: „Im Explorer öffnen“ lieferte 500er (falscher Spaltenname in DB-Query)
- Fix: 3MF-Viewer & Download bei Emoji-Pfaden (🐾) — Short-Path-Konvertierung für ZIP-Zugriff
+ Neuer i18n-Key „viewer.3mf.no_objects“ in de/en/cs
v6.6.4
- Auto-Orient: Antiparallel-Erkennung — Modelle mit Fasen/Chamfers stehen jetzt korrekt aufrecht
- Auto-Orient: Separate Toleranzen für Clustering (1%) und Outermost-Erkennung (3%)
- Neuer „Orientierung wechseln“-Button im Viewer — rotiert durch Top-8-Kandidatenflächen
+ Resin-Stützstrukturen werden weiterhin korrekt orientiert (Top/Bottom-Paar-Erkennung)
v6.6.2 / v6.6.3
- Auto-Orient: Koplanar-Clustering gruppiert Dreiecke nach Normalenrichtung UND Ebenenabstand
- Auto-Orient: Outermost-Check schließt innere Flächen (z.B. hinter Resin-Supports) korrekt aus
- Viewer-Mismatch Race Condition behoben, Scanner-Settings Hinweis
+ Area-weighted Normalen, CoG-Tiebreaker, Debug-Tabelle in Browser-Konsole
v6.6.0 / v6.6.1
- Voxel-Grid Ähnlichkeitserkennung: Präziserer Formvergleich per 64-Bit Raumgitter-Fingerabdruck
- Ähnliche Modelle als ausklappbares 3×3 Grid im Viewer-Panel
- Experten-Setting: Vollständige 3MF-Analyse (Lazy-Loading deaktivierbar)
- Ordner-Bereinigung: Blinkanimation statt sofortigem Verschwinden
- Kritischer Fix: Voxel-Grid SQLite-Overflow — ~50% der Thumbnails wurden nicht gespeichert
- Verwaiste Thumbnails werden beim Ordner-Entfernen vollständig aufgeräumt
+ Alphabetische Scan-Reihenfolge, Ähnlichkeits-Klick-Fix, Dual-Scoring für Lazy-3MFs
v6.5.0
- OBJ-Dateiformat: Wavefront OBJ wird vollständig unterstützt (Scan, Thumbnails, Viewer, Filter)
- Neuer C-Renderer obj_thumb mit Fan-Triangulierung und Polygon-Support
- OBJ-Badge Color Picker in den Einstellungen (Default: Grün)
- Dritter Format-Filter in der Sidebar für OBJ-Dateien
v6.4.1
- Slicer-Button im Viewer: Integriertes Dropdown-Menü statt separate Buttons
- Update-Checker: Versionsnummer zentralisiert — keine falschen Update-Meldungen mehr
v6.4.0
- Druckbett-Vorschau im Viewer: Konfigurierbares Druckbett mit Build-Volume-Box und Grössenwarnung
- Auto-Orient: Modelle werden automatisch so orientiert, dass die grösste Fläche unten liegt
- Drucker-Vorlagen: Bambu Lab, Prusa, Creality, Anycubic, Voron, RatRig, Elegoo
- Mesh-Reparatur-Check: C-Renderer erkennt Non-manifold-Kanten, gedrehte Normalen, degenerierte Dreiecke
- Ähnliche Modelle: Strenger Algorithmus (92% Schwelle) zeigt nur wirklich ähnliche Modelle
- Mesh-Qualitäts-Badge in der Gallery und Detail-Ansicht im Viewer-Panel
+ 20 neue i18n-Keys, DB-Migration, Druckbett-Warnung im Viewer statt Toast
v6.3.3
- Log-Encoding Fix: Nuitka-Builds schreiben jetzt lesbares UTF-8 statt UTF-16-Schrott
- C-level fd-Redirect: Auch C-Extensions und uvicorn-Output landen im Log
- Buffer-Interception: Rohe Byte-Writes werden sauber als UTF-8 dekodiert
+ UTF-8-BOM für Windows-Editoren, _TeeBuffer-Klasse für sichere .buffer-Zugriffe
v6.3.2
- OneDrive-Erkennung: Ordner-Shortcuts zeigen den echten Desktop/Dokumente-Pfad
- Desktop-Verknüpfung erstellen (Windows .lnk / Linux .desktop) mit App-Icon
- Single-Instance-Check: Kein Port-Konflikt mehr bei Doppelstart
- Fehlende Ordner werden im Welcome-Screen erkannt und können entfernt werden
- Quick-Link-Ordner direkt auswählbar im File-Browser
+ App-Icon in exe eingebettet, WinError-6-Fix für Nuitka-Builds
v6.3.1
- Automatischer Update-Checker beim Start (plattformabhängiger Download-Link)
- Einzeldatei-Restore: Wiederherstellung aus dem Papierkorb ohne Full-Scan
- Analyze-Badge entfernt — Analyse startet automatisch beim Öffnen im Viewer
+ Performance- und UX-Verbesserungen
v6.2.0
- Einzeldatei-Restore: Wiederherstellung aus dem Papierkorb ohne Full-Scan
- Schnellere Wiederherstellung bei grossen Bibliotheken (700+ Dateien)
v6.1.0
- Papierkorb-System: Dateien sicher löschen und wiederherstellen
- Auto-Shutdown bei Inaktivität (Standalone-Build)
- Eigenständiges 3MF-Thumbnail-Binary für schnellere Verarbeitung
- Kontextmenü für Tags und Kategorien in der Sidebar
- Konfigurierbare Anzahl paralleler Scan-Worker
+ diverse Bugfixes und Stabilitätsverbesserungen
v6.0.0
- Nativer C-Renderer ist jetzt Pflicht — deutlich schnellere Thumbnails
- Modulare Codebasis: Backend, Scanner und Frontend aufgeteilt
+ Bugfixes
v5.3.0
- Lazy 3MF-Parsing: Scan ~40x schneller, Analyse erst bei Bedarf
- On-Demand Geometrie-Analyse im 3D-Viewer
- Scan-Fortschrittsanzeige bei grossen Bibliotheken
- Toast-Benachrichtigungen (Scan abgeschlossen, etc.)
- Server-Offline-Erkennung mit automatischer Wiederverbindung
+ Bugfixes
v5.2.0
- 3MF-Verarbeitung 5–10x schneller durch C-Renderer
- Per-Objekt-Thumbnails für Multi-Objekt-3MF-Dateien
+ Bugfixes
v5.1.0
- Kein UI-Einfrieren mehr während des Scannens
- Sidebar-Daten werden in einem Request geladen statt elf
- Unicode-Ordnernamen (Emojis etc.) werden unterstützt
+ Bugfixes
v5.0.0
- Welcome-Screen komplett neu: Ordner-Grid mit Drag & Drop
- Scan-Fortschritt direkt in den Ordner-Kacheln sichtbar
- Angeheftete Ordner (Pinned Folders) für Schnellzugriff
- Änderungsdatum in Gallery-Kacheln und Viewer
+ Bugfixes
v4.13.0
- Mehrsprachigkeit: Deutsch, Englisch, Tschechisch
- Automatische Browser-Spracherkennung
- Neue Sprachen einfach per JSON-Datei hinzufügbar
v4.12.0
- Debug Monitor: Live-Logs und System-Metriken im Browser
v4.11.0
- Dashboard mit Statistiken, Charts und Tag-Cloud
- Interaktive Charts: Klick auf Segmente filtert die Gallery
v4.10.0
- Thumbnail-Qualität einstellbar (128 / 256 / 512px)
- Versteckte Ordner ignorieren
- Auto-Scan-Intervall konfigurierbar
- Desktop-Benachrichtigungen bei Scan-Ende
- Windows One-Click-Setup
v4.8.0 – v4.9.0
- Ordner-Gruppierung: Dateien nach Ordner visuell gruppiert
- Viewer-Cache: Bereits geöffnete Modelle laden sofort
- Tag- und Kategorie-Verwaltung in den Einstellungen
- Bewertungssystem ein-/ausschaltbar
- Slicer-Erkennung für Linux erweitert
+ Bugfixes
v4.6.0 – v4.7.0
- Neues Viewer-Design (NewX) mit modernem Side-Panel
- Experten-Einstellungen mit RAM-Limits
v4.5.0 – v4.5.8
- "Neu"-Markierung für ungesehene Dateien
- Kategorie Icon-Picker mit 650+ Icons
- 3MF-Bildgalerie im Viewer
- Duplikat-Finder mit Hash-Vergleich
- 3MF-Vorschaubild: Eingebettet oder generiert
+ Bugfixes
v4.0.0 – v4.3.0
- Streaming-Scanner: Thumbnails erscheinen sofort
- Multi-Ordner-Auswahl
- Linux-Unterstützung
- Sidebar mit Drag-Resize
- Prev/Next Navigation im Viewer
+ Scroll-Stabilität komplett überarbeitet
v1.0.0
- Erste Version: Gallery mit Thumbnails, 3D-Viewer, Tags, Kategorien
- Slicer-Integration (PrusaSlicer, Cura, OrcaSlicer, Bambu Studio)
- STL- und 3MF-Unterstützung
- Light/Dark Theme