128 lines
4.8 KiB
Markdown
128 lines
4.8 KiB
Markdown
# HartOMat Project Overview
|
|
|
|
## Überblick
|
|
|
|
HartOMat ist eine Produktionsplattform für technische Visualisierung. Die Anwendung verbindet CAD-Import, Datenaufbereitung, Material-Mapping, Produkt- und Asset-Verwaltung sowie eine Blender-basierte Render-Pipeline in einer gemeinsamen Oberfläche. Parallel dazu wird die Render-Orchestrierung von einem Legacy-Workflow auf ein node-basiertes Produktionsmodell migriert, ohne dass der bisherige Produktionsweg ausfallen darf.
|
|
|
|
## Positionierung
|
|
|
|
HartOMat ist kein isolierter Renderer, sondern die operative Schicht zwischen technischen Quelldaten und reproduzierbarer Medienproduktion. Das Projekt ist darauf ausgelegt, CAD-Assets, kommerzielle Output-Varianten, Template-Logik und Worker-Ausführung in einem System zusammenzuhalten.
|
|
|
|
## Was das System heute abdeckt
|
|
|
|
- STEP/CAD-Import mit nachgelagerter Aufbereitung
|
|
- Produkt-, Medien-, Order- und Admin-Oberflächen
|
|
- Render Templates für definierte Licht- und Kamera-Setups
|
|
- Output Types als steuerbare Produktionsprofile
|
|
- Graph-basierter Workflow-Editor mit Legacy-Kompatibilität
|
|
- Worker-basierte Renderausführung mit Docker, Celery und Blender
|
|
|
|
## Zielnutzen
|
|
|
|
- Weniger manuelle Übergaben zwischen CAD, Medienproduktion und Admin
|
|
- Reproduzierbare Render-Ergebnisse durch Templates und definierte Output Types
|
|
- Sichere Migration in Richtung node-basierter Produktion ohne Abschalten des Bestandssystems
|
|
- Klare Trennung zwischen operativen Profilen, Workflow-Definitionen und Render-Modulen
|
|
|
|
## Laufende Architekturidee
|
|
|
|
Das Zielbild ist eine modulare Produktionskette, in der einzelne Prozessschritte als wiederverwendbare Backend-Module im Workflow-Editor verfügbar sind. Dazu gehören insbesondere:
|
|
|
|
- CAD-Import und Dateiauflösung
|
|
- Geometrie- und GLB-Aufbereitung
|
|
- Materialzuordnung und Auto-Population
|
|
- Template-Auflösung
|
|
- Blender-Rendering
|
|
- Ergebnis-Persistierung und Benachrichtigung
|
|
|
|
Der Legacy-Weg bleibt dabei als Sicherheitsnetz parallel aktiv.
|
|
|
|
Weiterführende Architektur- und Migrationsdokumente:
|
|
|
|
- [WORKFLOW_MIGRATION_PLAN.md](workflows/WORKFLOW_MIGRATION_PLAN.md)
|
|
- [NODE_BASED_PRODUCTION_ARCHITECTURE.md](workflows/NODE_BASED_PRODUCTION_ARCHITECTURE.md)
|
|
- [WORKFLOW_IMPLEMENTATION_BACKLOG.md](workflows/WORKFLOW_IMPLEMENTATION_BACKLOG.md)
|
|
|
|
## HowTo
|
|
|
|
### 1. Umgebung starten
|
|
|
|
Alle Kommandos werden vom Repo-Root aus ausgeführt.
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
./scripts/start.sh
|
|
```
|
|
|
|
Danach sind standardmäßig erreichbar:
|
|
|
|
- Frontend: `http://localhost:5173`
|
|
- Backend API: `http://localhost:8888/docs`
|
|
- MinIO Console: `http://localhost:9001`
|
|
|
|
### 2. Mit lokalem Admin anmelden
|
|
|
|
Der Backend-Startprozess führt Migrationen und Seeds aus. Für lokale Entwicklungsumgebungen ist standardmäßig ein Admin-Benutzer vorhanden:
|
|
|
|
- E-Mail: `admin@hartomat.com`
|
|
- Passwort: `Admin1234!`
|
|
|
|
### 3. Zentrale Bereiche im UI
|
|
|
|
- `/` zeigt Dashboard, KPIs und den operativen Einstieg
|
|
- `/products` und einzelne Produktseiten bündeln Medien, Vorschauen und Produktdaten
|
|
- `/admin` verwaltet Output Types, Render Templates, Asset Libraries und Systemeinstellungen
|
|
- `/workflows` ist die Arbeitsfläche für Legacy-kompatible Graph-Workflows
|
|
|
|
### 4. Typischer Produktionsfluss
|
|
|
|
1. CAD-Datei oder Medienquelle hochladen.
|
|
2. Produktdaten, Materialzuordnung und Bibliotheken prüfen.
|
|
3. Render Template und Output Type auswählen.
|
|
4. Produktion über Legacy- oder Graph-Workflow starten.
|
|
5. Ergebnisse im Produkt, Auftrag oder Medienkontext kontrollieren.
|
|
|
|
### 5. Stack steuern
|
|
|
|
```bash
|
|
./scripts/restart.sh
|
|
./scripts/restart.sh --build
|
|
./scripts/restart.sh backend
|
|
./scripts/stop.sh
|
|
docker compose ps
|
|
docker compose logs -f
|
|
```
|
|
|
|
## Screenshots
|
|
|
|
### Dashboard
|
|
|
|

|
|
|
|
Das Dashboard ist der operative Einstieg in Produkte, Aufträge, KPIs und offene Prozessschritte. Für die Projektdokumentation werden hier Dark-Theme-Screenshots aus der laufenden lokalen Instanz verwendet.
|
|
|
|
### Workflow Editor
|
|
|
|

|
|
|
|
Der Workflow-Editor ist die Zieloberfläche für die modulare Produktionskette. Hier werden Legacy-Bridge-Nodes, Referenzpfade und graph-native Nodes zusammengeführt.
|
|
|
|
### Product Detail
|
|
|
|

|
|
|
|
Auf der Produktdetailseite laufen Geometrie, Medien, Materialzuordnung, Vorschau und Folgeaktionen zusammen.
|
|
|
|
### Admin
|
|
|
|

|
|
|
|
Die Admin-Oberfläche bündelt die Konfiguration von Render Templates, Output Types, Asset Libraries und Systemparametern.
|
|
|
|
## Betriebsnotizen
|
|
|
|
- Docker Compose nutzt den Stack-Namen `hartomat`.
|
|
- Der Backend-Container führt beim Start Migrationen und Seeds aus.
|
|
- GPU-Rendering ist auf den Blender-Worker ausgelegt und erwartet funktionierende Host-/Docker-GPU-Weitergabe.
|
|
- Für tiefergehende Workflow- und Paritätsarbeit liegen zusätzliche Dokumente unter [`docs/workflows/`](workflows/).
|