Files
vendoo/FEATURES.md
Masterluke77andGitHub 6f48827f4d Vendoo 1.41.2 – Git Ignore Boundary & Module Tracking Hotfix (#18)
* docs: prepare Vendoo 1.41.2 git-ignore boundary hotfix

* fix: track native source modules with root-anchored runtime ignores
2026-07-09 17:09:00 +02:00

46 KiB
Raw Permalink Blame History

Version 1.41.1 CI Source Root & Archive Exclusion Hotfix

  • produktive ESM-Prüfung ohne historische Übergabeordner
  • Pflichtdateiprüfung für Listings und Inventory
  • Archive werden weder gepusht noch veröffentlicht
  • echter Source-Root-Fehler bleibt release-blockierend

Version 1.41.0 Capability Graph Contract Hotfix

Stabilität

  • behebt den Startabbruch MODULE_CAPABILITY_MISSING des Modulmanagers
  • ergänzt settings.configuration als bereitgestellte Capability von vendoo.settings
  • prüft den realen Gesamtgraph aller 16 Module inklusive Startreihenfolge und Capability-Provider
  • behält den FLUX-Worker- und ESM-Export-Hotfix aus 1.40.1 vollständig bei
  • keine Datenbankänderung und keine Änderung an bestehenden Modulpaketen

Version 1.40.0 Secure Module Manager & Native Runtime Modules

Modulverwaltung

Administratoren verwalten Module vollständig über Administration → Module. Kernmodule sind geschützt. Optionale Vendoo-Module können mit Abhängigkeitsprüfung aktiviert und deaktiviert werden. Installierte Fremdmodule können exportiert und nach Deaktivierung entfernt werden.

Sichere .vmod-Pakete

Modulpakete besitzen ein versioniertes Manifest, Einzeldatei-Prüfsummen und eine Gesamtintegrität. Deklarative Module dürfen keinen ausführbaren Code enthalten. Ausführbare Pakete benötigen eine vertrauenswürdige Signatur und den noch getrennt freizugebenden isolierten Extension-Host; bis dahin bleiben sie in Quarantäne.

Native Laufzeitmodule

Publishing, AI, FLUX Studio und Quality Center besitzen native Modulmanifeste, Policies und Lebenszyklen. Hintergrundprozessoren werden nur gestartet, wenn ihr Modul aktiv ist. Deaktivierte Module sperren ihre API-Namensräume kontrolliert.

Slice 32 Batch Image Factory (1.27.0)

Version 1.36.0 Secure Theme Manager

Persönliche Darstellung

Jeder angemeldete Benutzer kann Theme, UI-Dichte und reduzierte Bewegung über eine eigene Eingabemaske verwalten. Die Präferenz wird serverseitig dem Benutzer zugeordnet und beim nächsten Start erneut geladen.

Administrative Theme-Profile

Administratoren können validierte Theme-Profile erstellen, bearbeiten, exportieren, importieren und als Systemstandard festlegen. Profile bestehen ausschließlich aus freigegebenen Design Tokens. Freies CSS oder JavaScript wird nicht gespeichert oder ausgeführt.

Accessibility

Der Theme Manager zeigt Kontrastwerte zentraler Farbkombinationen, bietet ein Hochkontrast-Theme, sichtbare Fokuszustände, reduzierte Bewegung und Mindestzielgrößen für Bedienelemente.

  • zentrale Batch-Bildproduktion als eigener Navigationsbereich
  • Quellbilder aus FLUX, AI, Artikeln, Editorversionen und früheren Produktionsausgaben
  • integrierte Profile für eBay, Vinted, Kleinanzeigen, Etsy, Instagram, Webshop und Originaloptimierung
  • eigene Profile mit Größe, Fit-Modus, Hintergrund, Format, Qualität und Dateinamensschema
  • mehrere Profile und mehrere Bilder pro Auftrag
  • optionale Hintergrundentfernung und Wasserzeichen
  • persistente Jobtabellen mit Einzelpositionen, Pause, Fortsetzen, Abbruch, Retry und Neustartwiederaufnahme
  • nicht destruktive Versionen und automatische Aufnahme in die zentrale Bildergalerie
  • ZIP-Export aller fertigen Ausgaben eines Auftrags

Stabilitäts- und Diagnosezentrum (1.26.1)

Vendoo überwacht jetzt seine lokale Serververbindung, versieht API-Anfragen mit Diagnose-IDs und zeigt einen klaren Verbindungsstatus statt stiller Folgefehler. Administratoren können unter Admin → System eine vollständige, geheimnisfreie Systemprüfung starten und das Ergebnis zusammen mit den letzten Clientfehlern kopieren. Die Oberfläche reagiert zusätzlich auf die reale Breite des Arbeitsbereichs neben der Sidebar und nicht nur auf die Browserbreite.

Slice 18 Mobile Mediathek & OpenRouter Diagnostics

  • Getrennte Kamera- und Mediathek-Auswahl im QR-Upload
  • Mobile Mehrfachauswahl sowie HEIC/HEIF-Konvertierung
  • Robuster OpenRouter-Request-Fallback pro Modell
  • Dynamische Free-Modell-Diagnose und klarer OpenAI-Fallback-Hinweis

Slice 17 LAN QR, OpenRouter Failover & Mobile Navigation

  • Automatische private LAN-IP-Auswahl mit Adapter-Priorisierung
  • Konfigurierbare PUBLIC_BASE_URL für QR-Upload
  • Mehrstufiger OpenRouter-Failover über aktuelle Free-Bildmodelle
  • Chat-Completions- und Images-API-Fallback für OpenRouter
  • Robuste mobile Off-Canvas-Navigation

Slice 16 AI Job Queue & Multi-Mode Image Generation

  • Queue-basierte AI-Bildgenerierung mit Status-Polling
  • 13 Varianten statt nur 23
  • Modi: Model / Ghost Mannequin / Flatlay
  • AI-Bildhistorie im Listing-Editor

Slice 15 AI Provider Settings Center

  • UI für AI-Model-Foto-Provider und Free-Model-Discovery
  • Live-Abfrage aktueller OpenRouter-Bildmodelle aus der Settings-Seite
  • Konfigurierbare Safety-Flags und Fallback-Logik ohne Codeänderung

Slice 14 OpenRouter Free Image Discovery

  • Dynamic Lookup gegen OpenRouter Models API (output_modalities=image)
  • Filter auf kostenlose Bildmodelle, die sich laufend ändern können
  • Provider-Automatik: OpenRouter Free zuerst, dann OpenAI-Fallback
  • Speicherung von provider und provider_model für spätere Nachvollziehbarkeit

Slice 13 AI-Model-Fotos mit Safety-Filter

  • Sichert den Workflow für Modeartikel ohne Person im Originalbild ab
  • Erzeugt 13 zusätzliche Bilder als Model, Ghost Mannequin oder Flatlay
  • Blockiert Unterwäsche, Bademode, transparente Erotik-Looks und Kinderkleidung
  • Speichert Generierungen und erzeugte Bilder in separaten Tabellen für spätere Nachverfolgung

Vendoo - Feature-Dokumentation

Lokaler Multi-Plattform Listing-Generator mit AI, Lagerverwaltung und Publishing-System. Stand: 2026-07-09 | Version 1.39.0

Version 1.39.0 Native Listings, Inventory & Media

  • Artikel, Papierkorb, Lager und Medienbibliothek als native Plattformmodule
  • 15 registrierte Module, davon 9 nativ und 6 Legacy Bridges
  • bekannte API-Pfade und bestehende Oberfläche bleiben kompatibel
  • serverseitige Artikel-Allowlist und HTML-Bereinigung
  • Bearbeitungssperren bei Artikelupdates
  • endgültiges Löschen ausschließlich aus dem Papierkorb
  • Lager-Bulk-Limit von 500 eindeutigen Artikeln
  • sichere Medienpfade und Schutz aktiver Artikelreferenzen
  • Repository-Injektion für testbare, speicherunabhängige Services
  • bestehende Datenbanktabellen und Daten bleiben erhalten

Design-Freeze 2026

Die freigegebenen Referenzen in MockupDesign/ sind die verbindliche UI-/UX-Richtung. Die Startseite wird als Studio Flow umgesetzt und bildet den Artikelzyklus Erfassen → AI-Prüfung → Bereit → Geplant → Veröffentlicht → Verkauft ab. Gemeinsame Design-Tokens, App-Shell, Navigation, Dark Mode und Kontextpanels werden zentral gepflegt.


Tech Stack

Komponente Technologie
Backend Node.js + Express (ESM)
Frontend Vanilla HTML/CSS/JS (kein Framework, kein Build)
Datenbank SQLite via better-sqlite3 (WAL-Modus)
AI Anthropic Claude, OpenAI, OpenRouter, Ollama (lokal)
Bildverarbeitung sharp (Resize, Hintergrund, Wasserzeichen)
Rich-Text Quill Editor
QR-Codes QRious
E-Mail Nodemailer (SMTP)
Auth Scrypt-Hashing, Session-basiert, Magic Links
Extension Chrome/Edge Manifest v3, Firefox WebExtension, Safari Web Extension

Projektstruktur

Vendoo/
├── server.mjs              # Express-Server (1253 Zeilen, alle API-Routen)
├── package.json             # Dependencies + Scripts (start, dev)
├── setup.bat / setup.ps1    # Windows-Installer (Install/Update/Repair/Uninstall)
├── .env / .env.example      # Konfiguration (API-Keys, SMTP, Port)
├── db/
│   ├── schema.sql           # DB-Schema (listings, templates, settings, publish_log)
│   └── vendoo.db            # SQLite-Datenbank
├── lib/
│   ├── db.mjs               # Datenbank-Zugriff (alle CRUD-Funktionen, ~390 Zeilen)
│   ├── auth.mjs             # Auth-System (Users, Sessions, Rate-Limiting, Audit, ~290 Zeilen)
│   ├── ai-router.mjs        # AI-Provider-Dispatcher
│   ├── ai-claude.mjs        # Anthropic Claude Vision API
│   ├── ai-openai.mjs        # OpenAI GPT-4o Vision API
│   ├── ai-openrouter.mjs    # OpenRouter Multi-Modell API (~110 Zeilen)
│   ├── ai-local.mjs         # Ollama lokale Inferenz
│   ├── images.mjs           # Bildverarbeitung (Resize, BG-Remove, Watermark)
│   ├── fees.mjs             # Gebührenberechnung pro Plattform
│   ├── categories.mjs       # Kategorie-Bäume pro Plattform (~360 Zeilen)
│   ├── html-templates.mjs   # Plattform-spezifische HTML-Beschreibungs-Wrapper
│   ├── mailer.mjs           # SMTP E-Mail-Versand + Templates (~210 Zeilen)
│   ├── etsy-api.mjs         # Etsy REST API v3 + OAuth2 PKCE (~185 Zeilen)
│   └── ebay-api.mjs         # eBay REST API + OAuth2 (~270 Zeilen)
├── platforms/
│   ├── vinted.mjs           # Vinted Prompt-Template + Parsing
│   ├── ebay-ka.mjs          # eBay Kleinanzeigen
│   ├── ebay-de.mjs          # eBay.de
│   └── etsy.mjs             # Etsy
├── public/
│   ├── index.html           # Haupt-UI (Single Page, ~845 Zeilen)
│   ├── login.html           # Login-Seite (Setup, Magic Link, Passwort)
│   ├── style.css            # Komplettes Styling inkl. Dark Mode (~1200 Zeilen)
│   └── app.js               # Frontend-Logik (~3240 Zeilen)
├── extension/
│   ├── manifest.json        # Chrome Extension Manifest v3
│   ├── background.js        # Service Worker
│   ├── popup.html/js        # Extension-Popup
│   ├── content.js           # Content Script für Vinted (~1170 Zeilen)
│   ├── content.css          # Injiziertes Styling
│   └── vinted-categories.js # Vinted-Kategorie-Mapping
└── uploads/                 # Hochgeladene Produktfotos

Datenbank-Schema

Tabelle: listings

Spalte Typ Beschreibung
id INTEGER PK Auto-Increment
platform TEXT NOT NULL vinted, ebay-ka, ebay-de, etsy
ai_provider TEXT NOT NULL claude, openai, openrouter, local
title TEXT Listing-Titel
description TEXT Beschreibungstext
tags TEXT (JSON) Array von Tags/Hashtags
photos TEXT (JSON) Array von Dateinamen
seller_notes TEXT Verkaeuferbemerkungen
brand TEXT Marke
category TEXT Produktkategorie
size TEXT Groesse
color TEXT Farbe
condition TEXT Zustand
price REAL Preis in EUR
status TEXT DEFAULT 'active' active, sold, reserved
language TEXT DEFAULT 'de' Sprache (de,en,fr,nl,pl,es,it,pt)
sku TEXT Artikelnummer (VD-0001 Format)
storage_location TEXT Lagerort (z.B. "Regal A2")
deleted_at TEXT Soft-Delete Timestamp
created_at TEXT Erstellungsdatum
updated_at TEXT Letzte Aenderung

Tabelle: templates

Spalte Typ Beschreibung
id INTEGER PK Auto-Increment
name TEXT NOT NULL Vorlagen-Name
platform TEXT Plattform (null = alle)
seller_notes TEXT Verkaeuferbemerkungen
language TEXT DEFAULT 'de' Sprache
default_tags TEXT (JSON) Standard-Tags
created_at TEXT Erstellungsdatum

Tabelle: publish_log

Tracking aller Veroeffentlichungen (listing_id, platform, status, external_id, external_url, published_at)

Tabelle: ebay_queue

eBay-Publish-Warteschlange (listing_id, status, ebay_item_id, ebay_url, error, retries)

Tabelle: scheduled_publish

Zeitgesteuerte Veroeffentlichungen (listing_id, platform, scheduled_at, status, error)

Tabelle: settings

Key-Value Store (default_platform, default_ai, seller_notes, API-Keys, SMTP-Config)

Tabelle: users

Benutzerverwaltung (email, name, password_hash, role, active, avatar_color, invited_by)

Tabelle: sessions

Auth-Sessions (user_id, token_hash, ip, user_agent, expires_at)

Tabelle: auth_tokens

Magic Links + Einladungen (email, token_hash, type, expires_at, used)

Tabelle: rate_limits, audit_log, login_history

Sicherheit und Nachverfolgung


Features im Detail

1. AI-Listing-Generator (Kernfeature)

Was: Fotos hochladen → AI generiert komplettes Listing (Titel, Beschreibung, Tags, Metadaten)

Ablauf:

  1. Fotos per Drag & Drop oder Dateiauswahl hochladen (max. 10, je 20MB)
  2. Plattform waehlen (Vinted, eBay KA, eBay.de, Etsy)
  3. AI-Provider waehlen (Claude, OpenAI, OpenRouter, Ollama)
  4. Modell waehlen (bei OpenRouter/Ollama)
  5. Sprache waehlen (8 Sprachen)
  6. Varianten waehlen (1-3)
  7. Optional: Vorlage waehlen (Seller Notes)
  8. „Artikel generieren“ klicken
  9. AI analysiert Fotos und liefert: Titel, Beschreibung, Tags, Marke, Kategorie, Groesse, Farbe, Zustand, Preisvorschlag
  10. Ergebnis in editierbaren Feldern anzeigen (Quill WYSIWYG-Editor)
  11. HTML-Vorlage mit plattform-spezifischem Styling generieren
  12. Gebuehrenberechnung automatisch anzeigen
  13. Speichern erzeugt Listing mit auto-generierter SKU (VD-XXXX)

Dateien: server.mjs (POST /api/generate), lib/ai-*.mjs, platforms/*.mjs, public/app.js

API: POST /api/generate, POST /api/upload, GET /api/providers, GET /api/platforms


2. Foto-Management & Editor

Upload:

  • Drag & Drop Dropzone
  • Multi-File-Auswahl (nur Bilder: jpg, png, webp, gif)
  • Vorschau-Thumbnails mit Entfernen-Button
  • Drag-to-Sort (Reihenfolge aendern)

Bildbearbeitung (Canvas-basiert):

  • Helligkeit (-100 bis +100)
  • Kontrast (-100 bis +100)
  • Saettigung (-100 bis +100)
  • Drehen (links/rechts 90°)
  • Spiegeln (horizontal)
  • Zuschneiden (Crop-Tool)
  • Zuruecksetzen auf Original
  • Uebernehmen/Abbrechen

Bildtools:

  • Hintergrund entfernen (Corner-Sample-Methode, Toleranz 60)
  • Wasserzeichen hinzufuegen (Text-Overlay, 4% Schriftgroesse, 40% Opazitaet)

API: POST /api/upload, POST /api/images/remove-bg, POST /api/images/watermark


3. Listing-Verwaltung (Historie)

Such- und Filteroptionen:

  • Volltextsuche (Titel, Beschreibung, Marke) mit 300ms Debounce
  • Plattform-Filter (Dropdown)
  • Status-Filter (Aktiv, Verkauft, Reserviert)
  • Datumsbereich-Filter (Von/Bis)

Listenansicht:

  • Thumbnail + Titel + SKU-Badge
  • Plattform + AI-Provider + Preis + Datum
  • Lagerort-Anzeige (wenn zugewiesen)
  • Publish-Status-Badges pro Plattform (published/copied/pending)
  • Inline-Status-Aenderung (Dropdown)
  • Duplizieren-Button
  • Loeschen-Button (Soft-Delete → Papierkorb)

Batch-Operationen:

  • Alle auswaehlen / Einzelauswahl
  • Ausgewaehlte loeschen
  • Alle loeschen (gefiltert)
  • Status massenweise aendern (Aktiv/Verkauft/Reserviert)
  • Etiketten drucken (ausgewaehlte)

Pagination:

  • Seitengroesse: 10 / 20 / 50 / Alle
  • Vor/Zurueck (oben + unten)
  • Seite X von Y, Gesamtanzahl

Export:

  • CSV-Export (mit Plattform/Status-Filter)
  • JSON-Export (alle gefilterten Listings)

Detail-Ansicht:

  • vollständiger Listing-Arbeitsbereich statt reduziertem Detailformular
  • Fotogalerie mit großem Cover, Thumbnail-Leiste und vollständiger Bilddarstellung
  • Fotos hinzufügen, entfernen, per Drag & Drop sortieren und als Cover festlegen
  • vorhandene Bilder direkt mit Helligkeit, Kontrast, Sättigung, Rotation, Spiegelung und Crop bearbeiten
  • QR-Code (SKU + ID, via QRious)
  • Alle Felder editierbar: Plattform, AI-Provider, Sprache, SKU, Status, Titel, Tags, Verkäufernotizen, Marke, Kategorie, Groesse, Farbe, Zustand, Preis, Lagerort
  • Beschreibung gleichzeitig im Quill-WYSIWYG und im HTML-Code bearbeiten
  • WYSIWYG- und HTML-Codeansicht sind live und bidirektional synchronisiert
  • separate sandboxed Plattformvorschau
  • Editor-HTML und vollständiges Plattform-HTML separat kopierbar
  • Aenderungen speichern
  • Alles kopieren
  • Etikett erstellen
  • Datenblatt erstellen
  • Loeschen

API: GET/POST/PUT/DELETE /api/listings, POST /api/listings/:id/duplicate, GET /api/export/csv


4. Vorlagen-System (Templates)

3 vordefinierte Vorlagen (Seed):

  1. "Sneaker & Schuhe" (Vinted, DE) — Versand-/Zustandshinweise + Sneaker-Tags
  2. "Vintage Kleidung" (Vinted, DE) — Vintage-spezifische Hinweise + Retro-Tags
  3. "Elektronik & Zubehoer" (eBay.de, DE) — Funktionshinweise + Technik-Tags

Verwaltung:

  • Liste aller Vorlagen (Name, Plattform, Sprache)
  • Erstellen: Name, Plattform (optional), Sprache, Seller Notes (Quill), Standard-Tags
  • Bearbeiten / Loeschen
  • Vorlagen-Auswahl im Generator (Dropdown)
  • Bei Auswahl: uebernimmt Plattform + Sprache + Seller Notes + Tags

API: GET/POST/PUT/DELETE /api/templates


5. Publishing-System

UI 2026 / Slice 05 Publish-Center:

  • gemeinsame Arbeitsoberfläche für Smart Copy, Direkt-Publishing, eBay Queue und Zeitplanung
  • bildorientierte Listing-Auswahl mit Suche, Filtern, Sortierung und Mehrfachauswahl
  • inline bearbeitbare Publish-Daten mit Pflichtfeld- und Integrationsprüfung
  • Queue-Status, Fehlerwiederholung, Aktivitätsverlauf und Schnellaktionen in einer Statusleiste
  • keine separaten Browserfenster für interne Publish-Arbeitsschritte

Smart Copy (manuelles Veroeffentlichen):

  • Schritt-fuer-Schritt-Anleitung pro Plattform
  • Fotogalerie mit Download
  • Kopierbare Felder: Titel, Beschreibung (Text + HTML), Tags, Preis, Metadaten
  • "Plattform oeffnen" Button (Direkt-URL)
  • "Als veroeffentlicht markieren" Button

Direkte API-Veroeffentlichung:

  • Etsy: OAuth2 + PKCE → Listing erstellen + Bilder hochladen
  • eBay.de: OAuth2 → Inventory Item + Offer + Publish

eBay-Warteschlange:

  • Listings zur Queue hinzufuegen (Batch)
  • Queue-Ansicht: SKU, Titel, Status, Fehler
  • Alle verarbeiten / Fehlgeschlagene wiederholen / Queue leeren
  • Status-Tracking: pending → uploading → published/failed

Zeitgesteuerte Veroeffentlichung:

  • Datum + Uhrzeit waehlen
  • Plattform waehlen
  • Batch-Scheduling moeglich
  • Uebersicht aller geplanten Veroeffentlichungen
  • Background-Job prüft alle 60 Sekunden auf faellige Items

Publish-Status-Tracking:

  • Publish-Log pro Listing + Plattform
  • Status-Badges in Historie + Publish-Ansicht

API: POST /api/publish/smart-copy, POST /api/publish/mark, POST /api/publish/etsy, POST /api/ebay/publish/:id, GET/POST/DELETE /api/ebay/queue, GET/POST/DELETE /api/schedule


6. Lagerverwaltung (Inventory)

Uebersicht:

  • Statistik-Karten: Artikel gesamt, Lagerorte, Aktive Artikel, Lagerwert (EUR)
  • Lagerort-Kacheln mit: Name, Artikelanzahl (aktiv/verkauft/reserviert), Gesamtwert
  • "Ohne Lagerort" Kachel fuer nicht zugewiesene Artikel
  • Neuen Lagerort anlegen

Detail-Ansicht (pro Lagerort):

  • Artikelliste mit Checkboxen
  • SKU, Titel, Plattform, Preis, Status
  • Lagerort umbenennen
  • Ausgewaehlte Artikel an anderen Ort verschieben (Bulk)

Integration:

  • Lagerort-Feld in Listing-Detail editierbar
  • Lagerort-Feld im Generator (bei Erstellung setzbar)
  • Lagerort in Historie-Listenansicht sichtbar

API: GET /api/inventory/locations, GET /api/inventory/unassigned, GET /api/inventory/location/:loc, PUT /api/inventory/bulk-location


7. SKU / Artikelnummer-System

  • Auto-Generierung: VD-0001, VD-0002, ... (4-stellig, aufsteigend)
  • Backfill fuer bestehende Listings ohne SKU
  • SKU in Detail-Ansicht editierbar
  • SKU in QR-Codes kodiert (JSON: {sku, id})
  • SKU auf Etiketten und Datenblaettern

8. Gebuehrenrechner

Plattform-Gebuehren:

Plattform Provision Fixkosten
Vinted 5% Kaeuferschutz + 0,70 EUR
eBay Kleinanzeigen 0% Kostenlos
eBay.de 11% Verkaufsprovision + 0,35 EUR
Etsy 6,5% + 4% Payment + 0,30 + 0,20 EUR
  • Echtzeit-Berechnung bei Preiseingabe
  • Zeigt: Brutto, Gebuehren, Netto pro Plattform
  • Auch im Generator bei Preisvorschlag

API: GET /api/fees


9. Kategorie-System

  • Hierarchischer Kategorie-Picker (Baum mit Gruppen/Untergruppen)
  • Suchfunktion mit Scoring (Name + Pfad)
  • Plattform-spezifische Kategorien (Vinted, eBay KA, eBay.de, Etsy)
  • Caching fuer Performance
  • Ausgewaehlte Kategorie mit Clear-Button

API: GET /api/categories/:platform, GET /api/categories/:platform/match


10. Druck-Funktionen

Etiketten (Labels):

  • 2-Spalten-Grid, A4-druckfertig
  • QR-Code + SKU + Titel (40 Zeichen) + Plattform + Preis
  • Batch-Druck fuer mehrere Listings

Datenblaetter:

  • Volle Listing-Details auf A4
  • QR-Code + bis zu 4 Fotos
  • Beschreibung (200 Zeichen) + Metadaten-Tabelle

11. Auth & Benutzerverwaltung

Authentifizierung:

  • Passwort-Login (Scrypt-Hashing)
  • Magic Links per E-Mail (15 Min gueltig)
  • Setup-Modus (erster Admin erstellt Konto)
  • CSRF-Token-Validierung
  • Rate-Limiting (5 Versuche / 15 Min)
  • Session-basiert (3 Tage Ablauf, automatische Bereinigung)

Benutzerverwaltung (Admin):

  • Benutzer einladen (Magic Link oder Auto-Passwort)
  • Rollen: Admin, Editor
  • Benutzer aktivieren/deaktivieren
  • Passwort zuruecksetzen
  • Login-Verlauf einsehen
  • Sessions verwalten (eigene + alle)
  • Einladung erneut senden

Audit-Log:

  • Alle Aktionen protokolliert (Login, CRUD, Settings, etc.)
  • Benutzer, Aktion, Ziel, IP, Timestamp
  • Paginierte Ansicht

API: POST /auth/login, POST /auth/setup, POST /auth/invite, GET /api/me, Admin-Routen unter /api/admin/*


12. E-Mail / SMTP

  • Konfigurierbar ueber Admin-Panel oder .env
  • SMTP-Verbindungstest
  • Magic-Link-Versand
  • Einladungs-E-Mails mit Passwort
  • Gebrandetes HTML-Template (Vendoo-Header)
  • Fallback: Console-Output wenn SMTP nicht konfiguriert

API: GET/PUT /api/admin/smtp, POST /api/admin/smtp/test


13. System & Backup (Admin)

System-Info:

  • Node.js Version, Uptime, RAM-Verbrauch
  • Datenbank-Groesse
  • Benutzer- und Listing-Anzahl
  • Aktive Sessions

Backup & Restore:

  • DB-Download als .db-Datei
  • DB-Restore per Upload (erstellt Backup der alten DB)
  • Abgelaufene Sessions bereinigen

API: GET /api/admin/system, GET /api/backup, POST /api/restore


14. Chrome Extension

Zweck: Automatisches Ausfuellen von Vinted-Listing-Formularen

Features:

  • Verbindung zum Vendoo-Server (localhost:8124)
  • Queue-Verwaltung: naechstes Listing aus Warteschlange
  • Auto-Fill: Titel, Beschreibung, Fotos, Kategorie, Metadaten
  • Vinted-Kategorie-Mapping (337 Zeilen)
  • Status-Badge (Connected/Offline)
  • Batch-Verarbeitung mit konfigurierbarem Delay (Standard 45s)

Host Permissions: localhost:8124, vinted.de/.fr/.co.uk/.com


15. Einstellungen

  • API-Keys: Anthropic, OpenAI, OpenRouter (maskiert angezeigt)
  • Ollama-URL (Standard: localhost:11434)
  • Etsy API Key + OAuth-Verbindung
  • eBay Client ID/Secret/RuName + OAuth + Sandbox-Toggle
  • Standard-Plattform, Standard-AI, Standard-Sprache
  • Verkaeuferbemerkungen (global, in jedes Listing eingefuegt)

API: GET/PUT /api/settings


16. UI / Design

  • Sidebar-Navigation (links, 230px, fixed) mit 4 Gruppen: Allgemein, Listings, Tools, System
  • Topbar mit dynamischem Titel, Suchen-Button und „Neuer Artikel“-Button
  • Dark Mode (Toggle im Sidebar-Footer, localStorage-Persistenz, System-Praeferenz)
  • Responsive (Mobile: Sidebar versteckt, Hamburger-Menue, Overlay)
  • Toast-Benachrichtigungen (2,5s)
  • Browser-Notifications (Listing gespeichert, eBay Queue, Scheduled)
  • Quill WYSIWYG-Editor (Toolbar: H1-H3, Bold, Italic, Underline, Strike, Listen, Links, Farben)
  • Live-HTML-Workbench: WYSIWYG, editierbarer HTML-Code und Plattformvorschau gleichzeitig sichtbar

17. Installer (setup.bat + setup.ps1)

Menue-Optionen:

  1. Installieren (Node.js pruefen/installieren, npm install, .env erstellen, Ordner)
  2. Starten (Server + Browser oeffnen)
  3. Update (Dependencies aktualisieren, neue .env-Eintraege)
  4. Reparieren (node_modules loeschen + neu installieren)
  5. Deinstallieren (node_modules + optional Daten entfernen)
  6. Status (Node/npm/Dependencies/.env/DB/Uploads pruefen)

CLI-Modus: setup.bat install, setup.bat update, etc.


API-Endpunkt-Uebersicht

Auth

Methode Route Beschreibung
POST /auth/setup Erstes Admin-Konto erstellen
POST /auth/login Anmelden
POST /auth/logout Abmelden
POST /auth/invite Einladung senden
POST /auth/accept-invite Einladung annehmen
GET /auth/magic Magic-Link-Redirect
GET /auth/setup-check Setup-Modus pruefen
GET /auth/etsy Etsy OAuth starten
GET /auth/etsy/callback Etsy OAuth Callback
GET /auth/ebay eBay OAuth starten
GET /auth/ebay/callback eBay OAuth Callback

Listings

Methode Route Beschreibung
GET /api/listings Alle Listings (q, platform, status)
GET /api/listings/:id Einzelnes Listing
POST /api/listings Listing erstellen
PUT /api/listings/:id Listing aktualisieren
DELETE /api/listings/:id Listing loeschen (Soft-Delete)
POST /api/listings/:id/duplicate Listing duplizieren

Generator & AI

Methode Route Beschreibung
POST /api/generate AI-Listing generieren
POST /api/upload Fotos hochladen
GET /api/providers AI-Provider + Modelle
GET /api/platforms Marktplatz-Plattformen
GET /api/categories/:platform Kategorie-Baum
GET /api/categories/:platform/match Kategorie-Suche
GET /api/price-suggest Preisvorschlag

Bilder

Methode Route Beschreibung
POST /api/images/remove-bg Hintergrund entfernen
POST /api/images/watermark Wasserzeichen hinzufuegen

Templates

Methode Route Beschreibung
GET /api/templates Alle Vorlagen
POST /api/templates Vorlage erstellen
PUT /api/templates/:id Vorlage aktualisieren
DELETE /api/templates/:id Vorlage loeschen

Publishing

Methode Route Beschreibung
GET /api/publish/info/:id Publish-Status + Verfuegbarkeit
POST /api/publish/smart-copy Smart-Copy-Daten
POST /api/publish/mark Als veroeffentlicht markieren
GET /api/publish/status Batch-Status-Abfrage
POST /api/publish/etsy Direkt auf Etsy veroeffentlichen
POST /api/ebay/publish/:id Direkt auf eBay veroeffentlichen

eBay Queue

Methode Route Beschreibung
GET /api/ebay/queue Warteschlange anzeigen
POST /api/ebay/queue Listings hinzufuegen
DELETE /api/ebay/queue/:id Aus Queue entfernen
DELETE /api/ebay/queue Queue leeren
POST /api/ebay/queue/process Alle verarbeiten
POST /api/ebay/queue/retry Fehlgeschlagene wiederholen
GET /api/ebay/policies eBay-Richtlinien abrufen

Scheduling

Methode Route Beschreibung
GET /api/schedule Geplante Veroeffentlichungen
POST /api/schedule Veroeffentlichung planen
DELETE /api/schedule/:id Geplante entfernen

Inventory

Methode Route Beschreibung
GET /api/inventory/locations Lagerorte mit Statistiken
GET /api/inventory/unassigned Artikel ohne Lagerort
GET /api/inventory/location/:loc Artikel pro Lagerort
PUT /api/inventory/bulk-location Bulk-Lagerort-Zuweisung

Papierkorb

Methode Route Beschreibung
GET /api/trash Geloeschte Listings
GET /api/trash/count Anzahl im Papierkorb
POST /api/trash/:id/restore Wiederherstellen
DELETE /api/trash/:id Endgueltig loeschen
DELETE /api/trash Papierkorb leeren

Gebuehren & Export

Methode Route Beschreibung
GET /api/fees Gebuehren berechnen
GET /api/export/csv CSV-Export
GET /api/dashboard/stats Dashboard-Statistiken
GET /api/html-templates HTML-Beschreibungs-Templates
POST /api/html-wrap Gespeichertes Listing in Plattform-HTML wrappen
POST /api/html-render Nicht persistierende Live-HTML-Vorschau rendern

Mobiler Foto-Upload

Methode Route Beschreibung
POST /api/mobile-upload-sessions Zeitlich begrenzte Upload-Sitzung und QR-Link erzeugen
GET /api/mobile-upload-sessions/:id Upload-Sitzung vom Desktop pollen
DELETE /api/mobile-upload-sessions/:id Upload-Sitzung schließen
GET /mobile-upload/:token Responsive Smartphone-Uploadseite
GET /mobile-upload-api/:token Öffentlichen Sitzungsstatus abrufen
POST /mobile-upload-api/:token/photos Fotos mit Bearer-Token aus dem QR-Link hochladen

Einstellungen & System

Methode Route Beschreibung
GET /api/settings Alle Einstellungen
PUT /api/settings Einstellungen speichern
GET /api/me Aktueller Benutzer
PUT /api/me Profil aktualisieren
GET /api/backup DB-Backup herunterladen
POST /api/restore DB wiederherstellen
GET /api/etsy/status Etsy-Verbindungsstatus
GET /api/ebay/status eBay-Verbindungsstatus

Admin (erfordert Admin-Rolle)

Methode Route Beschreibung
GET /api/admin/users Alle Benutzer
POST /api/admin/users/invite Benutzer einladen
PUT /api/admin/users/:id Benutzer bearbeiten
DELETE /api/admin/users/:id Benutzer loeschen
GET /api/admin/sessions Alle Sessions
DELETE /api/admin/sessions/:id Session beenden
GET /api/admin/audit Audit-Log
GET /api/admin/system System-Info
GET/PUT /api/admin/smtp SMTP-Konfiguration
POST /api/admin/smtp/test SMTP testen

Slice 07 Cross-Browser Extensions & Mobile Upload

  • extensions/chrome, extensions/edge und extensions/firefox
  • Vendoo Link Icon-Set in vier Browsergrößen
  • neues Popup und neues In-Page-Panel im freigegebenen Vendoo-Design
  • Plattformvorschau/HTML als Umschalter im Generator und Listing-Editor
  • responsive Layouts für Desktop, Notebook, iPad und Smartphone
  • QR-Code-Upload vom Smartphone mit 20 Minuten gültiger Upload-Sitzung
  • Handy-Fotos erscheinen automatisch im Generator beziehungsweise geöffneten Listing

Extension UX 1.4.0

  • Kompakte Queue-Karten mit Produktbild, Preis, SKU und Status
  • Direkte Einzelaktion „Nur ausfüllen“ ohne Entwurf und ohne Veröffentlichung
  • Option „Daten + Bilder ausfüllen“ ohne Abschlussaktion
  • Explizit getrennte Aktionen für Entwurf und Veröffentlichung
  • Gleichstand der Chrome-, Edge- und Firefox-Unterordner

Interaktives Dashboard und Studio Flow V2

  • eigenständiger Dashboard-Menüpunkt mit realen Kennzahlen und interaktiven SVG/CSS-Diagrammen
  • Studio Flow verwendet die verständlichen Zustände Bereit, Geplant, Veröffentlicht, Verkauft und Benötigt Aufmerksamkeit
  • mehrere Fotodateien werden automatisch als ZIP heruntergeladen
  • Publish-Center verfügt über Retry- und Stale-Render-Schutz beim ersten Laden

Local FLUX / ComfyUI Integration (Slice 19)

  • New local image provider option for AI model photos
  • Auto provider order: Local FLUX / ComfyUI -> OpenRouter Free -> OpenAI
  • Local status route, bootstrap install route and token regeneration route
  • Setup menu extended with local FLUX bootstrap + status
  • Security concept: backend-to-backend access, optional token, localhost by default

Slice 20 Local FLUX Full Installer

  • Vollautomatischer ComfyUI-Portable-Installer für Windows
  • Dynamische Auswahl des aktuellen offiziellen Release-Assets
  • GPU-Erkennung und passende Portable-Variante
  • Optionaler FLUX.1-schnell-FP8-Modell-Download
  • Fortschrittsanzeige in der Vendoo-UI
  • Update-, Start-, Stop- und Statusaktionen
  • Autostart über geplante Windows-Aufgabe
  • Localhost-only Sicherheitsmodus

Slice 21 FLUX Install Diagnostics

  • Detailed install readiness dashboard
  • Real BITS download progress for ComfyUI and FLUX
  • Resume-safe .part downloads
  • 7-Zip path and PowerShell 5.1 compatibility fix
  • Install log preview and error source details
  • Setup CLI status with component checks

Slice 22 Reliable extraction status

  • Supervised 7-Zip extraction with timeout and activity checks
  • Live UI telemetry: progress, elapsed seconds, file count, extracted MB and heartbeat
  • Separate 7-Zip output/error log display
  • Automatic stale-state detection and safe resume

Slice 23 FLUX Product Reference, Live Progress & Settings Command Center

  • Product photos are uploaded to local ComfyUI and used as a real image-to-image reference.
  • Reference fidelity can be configured from 3090 percent.
  • Local FLUX job progress updates across preparation, upload, rendering, moderation and persistence.
  • Settings are grouped into General, AI & APIs, Marketplaces and Local FLUX.
  • Local FLUX has explicit enabled/disabled/running/stopped/not-installed states.
  • Admin actions: install/repair, update, start, stop, status check and safe uninstall.
  • Real installation files override stale or unreadable installer-state metadata.
  • Uninstall keeps download archives by default and never removes listings, uploads or database data.

Slice 28 Eigenständiges FLUX Studio und VTO-Bereinigung

FLUX Studio

  • eigener Hauptmenüpunkt und eigene Seite
  • freier Textprompt ohne automatische Produktreferenz
  • Stilvorlagen, quadratische/Hochformat-/Querformat-Ausgabe
  • Seed und Inferenzschritte steuerbar
  • Live-Fortschritt aus ComfyUI
  • Vorschau, Download und persistente Bildhistorie
  • Übernahme eines erzeugten Bildes in den Listing-Generator
  • nachträgliche Bearbeitung: Zuschneiden, Drehen, Spiegeln, Helligkeit, Kontrast und Sättigung
  • Bearbeitungen werden als neue Bildversion gespeichert; Original bleibt erhalten

Bereinigte Architektur

  • keine FASHN-/VTO-Engine, kein Python-/Torch-/ONNX-Stack und kein VTO-Dienst mehr
  • keine VTO-Menüs, API-Routen, Datenbankmodelle oder aktiven Installationsoptionen
  • alte VTO-Runtime und Autostarts werden beim Upgrade einmalig entfernt
  • FLUX/ComfyUI, Listings, Datenbank, Uploads und Konfiguration bleiben erhalten

Slice 30 FLUX Studio Pro

  • persistente SQLite-Aufträge und einzelne Varianten
  • 1, 2 oder 4 Varianten pro Auftrag
  • eindeutige Seeds, Seed Lock und exakte Seed-Wiederholung
  • „Ähnlich erneut erzeugen“ mit übernommenem Prompt-/Parameterstand und neuem Seed
  • Favoriten und Favoritenfilter
  • Job-Center für wartende, laufende, teilweise fertige, fehlgeschlagene und abgebrochene Aufträge
  • Abbruch und Wiederholung
  • ComfyUI-Queue, -History und -Systemdaten einschließlich GPU/VRAM
  • Wiederaufnahme über persistierte ComfyUI-Prompt-IDs nach Vendoo-Neustart
  • phasenbasierter Fortschritt ohne geschätzte Prozentwerte
  • reiner Text-Prompt-Workflow ohne Produktreferenz oder VTO

Slice 31 Advanced Image Editor

  • nicht destruktiver Editor für Generator-, Listing- und FLUX-Bilder
  • Undo/Redo und lokale Bearbeitungshistorie
  • persistente Versionenkette über image_edit_versions
  • Original jederzeit wiederherstellbar
  • Vorher-/Nachher-Ansicht
  • freier Zuschnitt und feste Seitenverhältnisse 1:1, 4:5, 3:4, 16:9 und Original
  • Drehen, horizontales/vertikales Spiegeln und Begradigen
  • Belichtung, Helligkeit, Kontrast, Lichter, Schatten, Temperatur, Sättigung und Schärfe
  • Export als JPEG, WebP oder PNG mit Qualität und Zielgröße
  • serverseitiges Rendering in voller Auflösung mit sharp
  • jede Speicherung erzeugt eine neue Datei; vorhandene Bilder werden nicht überschrieben
  • Hintergrundentfernung und Wasserzeichen sind als nicht destruktive Editor-Werkzeuge integriert
  • keine Platzhalter für Inpainting, Outpainting oder Maskeneditor

Hotfix 1.23.2 FLUX-Layout und kompakte Aufträge

  • System- und ComfyUI-Karte steht unterhalb von Prompt & Auftrag
  • Vorschau bleibt separat, damit Bildaktionen beim Scrollen nicht verdeckt werden
  • komplettes Job-Center ein-/ausklappbar
  • einzelne Aufträge kompakt ein-/ausklappbar
  • aktive Aufträge standardmäßig geöffnet, abgeschlossene standardmäßig kompakt
  • Wasserzeichen mit Text, Position und Deckkraft im Advanced Image Editor
  • Hintergrundentfernung im Advanced Image Editor mit transparenter PNG-Ausgabe

Version 1.24.0 Responsive UI, FLUX-Archiv und Bildergalerie

Responsive Oberfläche

  • Die Listing-Tabelle passt sich auf Desktop, Tablet und Smartphone an.
  • Unterhalb von 860 Pixeln werden Listings als kompakte Karten mit klar beschrifteten Datenzeilen dargestellt.
  • Filter, Batch-Aktionen, Pagination, Detailansichten und Aktionsleisten umbrechen ohne die Seitenbreite zu sprengen.
  • Galerie, FLUX-Job-Center, Einstellungen, Generator- und Publish-Bereiche erhalten zusätzliche Breiten- und Overflow-Sicherungen.

Hintergrundentfernung mit Intensität

  • Die Hintergrundentfernung im Advanced Image Editor besitzt einen Regler von 0 bis 100.
  • Niedrige Werte schützen feine Kanten und ähnliche Produktfarben.
  • Hohe Werte entfernen einen größeren Farbbereich des erkannten Hintergrunds.
  • Vorschau und serverseitiger Export verwenden dieselbe Intensitätslogik.

FLUX-Auftragsarchiv und Pagination

  • Abgeschlossene, fehlgeschlagene und abgebrochene Aufträge können einzeln oder gesammelt archiviert werden.
  • Laufende, wartende und abbrechende Aufträge sind gegen Archivierung geschützt.
  • Archivierte Aufträge können einzeln oder gesammelt wiederhergestellt werden.
  • Im Archiv lassen sich einzelne, mehrere oder alle Aufträge endgültig löschen.
  • Das Löschen von Auftragsdaten löscht keine bereits erzeugten Bilder.
  • Aktive Liste und Archiv verwenden serverseitige Pagination mit 10, 20 oder 50 Aufträgen pro Seite.

Zentrale Bildergalerie

  • Eigener Navigationspunkt „Bilder“.
  • Gemeinsame Bibliothek für FLUX-Bilder, bearbeitete Versionen, AI-Bilder und Bilder aktiver Listings.
  • Raster- und Listenansicht.
  • Suche nach Prompt, Titel und Dateiname.
  • Filter nach Quelle und Favoriten sowie Sortierung nach Datum oder Name.
  • Pagination mit 24, 48 oder 96 Bildern pro Seite.
  • Mehrfachauswahl, ZIP-Download und kontrollierte Mehrfachlöschung.
  • Große Lightbox mit Metadaten, Prompt, Download, Favorit, Bearbeiten und Löschen.
  • Direkte Übergabe eines Galeriebildes an den Generator oder Advanced Image Editor.
  • Bilder, die in aktiven Listings verwendet werden, sind vor physischer Löschung geschützt.

Version 1.26.0 Artikel-Navigation, Publish, Zoom & Extensions

  • „Neuer Artikel“ als eigener Menüpunkt unmittelbar unter Dashboard; Hauptbereich „Artikel“ statt „Listings“.
  • Generierungsaktion heißt konsistent „Artikel generieren“.
  • Publish-Workspace lädt auch bei älteren oder beschädigten JSON-Feldern robust; direkter Publish-Scope korrigiert.
  • Smart Copy wird als zentriertes Popup geöffnet, während die mittlere Arbeitsfläche die vollständigen Verkaufsdaten zeigt.
  • Galerie-Lightbox mit stufenlosem Zoom, Fit, 100 %, Mausradsteuerung und Verschieben.
  • Kleine lokale SVG-Icons für Auswahl, Favorit und Medienaktionen.
  • Gebührenmodell auf private Verkäufer ausgerichtet; Etsy als Shop-Sonderfall transparent ausgewiesen.
  • Eigenes Extension Center mit Browsererkennung und Vorbereitung für Chrome, Edge, Firefox und Safari.
  • Safari-Quelle enthält Konvertierungsskript für Xcode/macOS.

Version 1.25.1 Adaptive Bildergalerie

  • Vollständig fließendes Galerie-Raster ohne starre Zwei-/Einspalten-Breakpoints
  • Bildfläche selbst öffnet die Vorschau; kein separater Öffnen-Button
  • Kartenbreiten, Overlay-Steuerungen und Aktionsdock passen sich per Container Query an
  • Direkte Seitenauswahl oberhalb und unterhalb der Galerie
  • Kompakte Symbolaktionen auf sehr schmalen Karten und vollständige Beschriftung bei ausreichender Breite
  • Saubere Tastaturbedienung für Bildöffnung, Auswahl, Favorit und Pagination
  • Inhaltsbreitenabhängiger Listing-Detail-Editor mit Container Queries, flexiblen Formularrastern und umbrechender WYSIWYG-Toolbar.
  • Überarbeitete Galerie-Karten mit eigener Auswahlsteuerung, Favoriten-Overlay, klarer Vorschau und stabiler Aktionsmatrix.
  • Smart Copy als responsives Modal statt verlorenem Inline-Workflow.
  • Ruhiger Publish-Refresh ohne rotierenden Gesamtbutton.
  • FLUX-Bildbibliothek mit serverseitiger Pagination (5/10/15).
  • FLUX Job-Center mit begrenzten Seitengrößen 5/10/15.
  • Prompt Lab für lokale Strukturierung und AI-gestützte Prompt-Veredelung über den aktiven Text-AI-Provider.

Version 1.28.0 Artikel Quality Center

  • Zentrale Qualitätsprüfung aller Artikel mit Score 0100 und verständlichen Noten AE.
  • Harte Publishing-Blocker getrennt von Warnungen und freiwilligen Empfehlungen.
  • Prüfung von Inhalt, Metadaten, Bildern, Preis, Organisation, Duplikaten und Vendoo-Plattformprofilen.
  • Bildmetadatenanalyse und persistenter Qualitätsverlauf.
  • Gebühren- und Erlösübersicht direkt im Qualitätsbericht.
  • AI-Vorschläge für Titel, Beschreibung und Tags mit verpflichtender Nutzerbestätigung.
  • Suche, Status-/Notenfilter und Pagination.

Version 1.29.0 Publishing Hardening

Vendoo bündelt direkte API-Veröffentlichungen und Extension-Workflows in einer persistenten Publishing-Queue. Aktive Doppelaufträge werden zusammengeführt; bereits live protokollierte Artikel benötigen eine ausdrückliche erneute Freigabe. Temporäre API-Fehler werden kontrolliert wiederholt. Alle Schritte erzeugen Audit-Ereignisse. eBay-Angebote können anhand der gespeicherten Offer-ID synchronisiert, aktualisiert und beendet werden. Etsy unterstützt Veröffentlichung und Statusabgleich. Vinted und Kleinanzeigen bleiben sichere, vom Nutzer bestätigte Browser-Extension-Abläufe.

Version 1.30.0 Operations Center

  • Betriebszentrale unter Admin → System mit getrennten Bereichen für Backup & Restore, Update Center und Extension-Diagnose.
  • Konsistente SQLite-Snapshots über die Backup-API statt direkter Kopie der geöffneten Datenbank.
  • Manuelle Voll- oder Datenbankbackups mit Uploads, optionaler .env, Manifest und SHA-256-Prüfsummen.
  • Sofortige Prüfung jedes Backups einschließlich SQLite-integrity_check.
  • Rotierende tägliche automatische Backups mit Uhrzeit, Aufbewahrung und Upload-Option.
  • Verifizierte Wiederherstellung mit automatisch vorgeschaltetem Sicherheitsbackup.
  • Update-Staging prüft neue Version, Pflichtdateien und verbotene Laufzeitdaten.
  • Updates und Wiederherstellungen werden ausschließlich bei beendetem Server über Setup-Menüpunkt 11 angewendet.
  • Setup-Menüpunkt 12 stellt den vorherigen Programm- und Laufzeitstand aus einem lokalen Rollback-Snapshot wieder her.
  • Sichtbarer Migrationsstatus, letzte Operation und ausstehende Operation.
  • Optionale Online-Updateprüfung über eine selbst konfigurierte öffentliche Manifest-URL.
  • Vendoo Link 1.9.0 sendet Diagnose-Heartbeats; Chrome, Edge, Firefox und Safari werden getrennt geprüft.
  • Automatische Backups enthalten niemals .env; Update-Pakete mit .env, Datenbank, Uploads oder node_modules werden blockiert.

Version 1.31.0 Mehrbenutzer, Rollen und Server-Sicherheit

Benutzer und Rollen

  • Rollenmatrix mit Administrator, Manager, Editor, Publisher und Leser.
  • Serverseitige Berechtigungsprüfung für Artikel, Medien, AI/FLUX, Publishing, Einstellungen, Benutzer, Sitzungen, Audit und Operations Center.
  • Schutz davor, den letzten aktiven Administrator zu deaktivieren oder zu löschen.

Sitzungen und Login-Schutz

  • Sichere, gehashte Session-Tokens mit absoluter Laufzeit und Inaktivitäts-Timeout.
  • Widerruf einzelner oder aller Benutzersitzungen.
  • Kontosperre nach wiederholten Fehlanmeldungen.
  • Starke Passwortregeln für Setup, Einladung und Passwortwechsel.

Zusammenarbeit

  • Persistente Artikel-Bearbeitungssperren mit Benutzeranzeige, automatischer Verlängerung und Ablauf.
  • Leser und gesperrte Benutzer sehen Artikel schreibgeschützt.
  • created_by und updated_by werden bei neuen Änderungen gespeichert.

Server-Härtung

  • Standardbindung an localhost.
  • Konfigurierbare Host- und Origin-Freigaben.
  • Rate Limits für lesende und verändernde API-Aufrufe.
  • Helmet/CSP, Request-IDs und restriktive CORS-Antworten.
  • Filterbares Audit-Protokoll mit CSV-Export.

Version 1.33.0 Docker, NAS und Produktionsbereitstellung

  • Dockerfile und Compose für reproduzierbaren Betrieb
  • nicht privilegierter, read-only Hauptcontainer
  • getrennte persistente Datenbereiche
  • Liveness, Readiness und geordneter Shutdown
  • Reverse-Proxy-, Cookie-, Origin- und Erst-Setup-Härtung
  • sichere Docker-/NAS-Backup-, Restore- und Updateabläufe
  • Windows-Lokalbetrieb bleibt vollständig erhalten
  • FLUX/ComfyUI bleibt ein optionaler externer Dienst

1.33.0 Multiplatform Deployment & UX Fixes

  • Windows-Zielauswahl: lokal, Docker Desktop, NAS/Portainer, VPS/Linux
  • Linux-/NAS-/VPS-Assistent setup.sh
  • neutraler FLUX-Studio-Start und Arbeitsbereich-Reset
  • stabilisierte Benutzerbearbeitung und sichere Update-Antwort

Plattformarchitektur ab 1.35.0

Vendoo wird als modularer Monolith weiterentwickelt. Version 1.35.0 ergänzt einen Plattformkernel, validierte Modulmanifeste, Lifecycle, Event Bus, Feature Flags, Policy Engine und Routenverträge. Die bestehenden Fachbereiche sind als legacy-bridge registriert und werden in späteren Releases einzeln migriert.

Das Design-System verwendet eine versionierte Tokenquelle unter public/design-system/tokens/source.json. Light, Dark und High Contrast werden deterministisch in CSS erzeugt. Freies CSS ist für den geplanten Theme Manager ausgeschlossen.

Neue Kernel-Routen benötigen zwingend einen Modulbesitzer und eine explizite Policy. Unbekannte Policies verweigern den Zugriff. Externe Erweiterungen dürfen nicht im Hauptprozess ausgeführt werden; der isolierte Extension-Host bleibt als deaktivierter Feature-Flag vorbereitet.

Vendoo 1.41.0 Coolify und kontrollierte Web-Updates

  • native Deployment-Verwaltung über vendoo.deployments
  • Coolify-Webhook- und API-Modus
  • verschlüsselte Deployment-Secrets
  • Pflichtbackup und Bestätigung DEPLOY
  • GitHub-Repository, Branch und Update-Kanal im Update Center
  • /app/data als persistenter Produktionsbereich
  • FLUX Studio beim ersten Coolify-Start deaktiviert
  • 17 Module, 15 nativ, 2 Legacy Bridges und 38 aufgelöste Capabilities
  • GHCR-Releasebilder mit versionierten, stable- und latest-Tags

1.41.2 Git Ignore Boundary & Module Tracking

  • Root-verankerte Runtime-Ignores
  • app/modules/ und app/modules/sessions/ bleiben versionierter Source
  • Git-Ignore-Semantiktest mit echtem temporärem Repository
  • Pflichtdatei- und Tracking-Gate im GitHub-Deploy-Assistenten