Import-Oberfläche mit Zeitraum, Clipauswahl und Upload bauen

Der Browser liest den entpackten Exportordner selbst, schlägt Montag bis
Freitag der Vorwoche vor, zeigt Videos pro Tag und warnt bei Lücken und
fehlenden Dateien. Nur die gewählten Videos werden hochgeladen; ein
abgebrochener Upload lässt sich in der Projektansicht fortsetzen.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
ferdi2goandClaude Opus 5.5 committed 2026-09-29 10:04:40 +00:00
1 parent 782d306cb1
commit d7102d04a4
12 files changed
+873 -11

No files matched your search

+15 -4
View File
@@ -17,7 +17,7 @@ automatisch passieren soll:
Ausgabe ist ein MP4 in 1920×1080 mit 30 fps. Hochkant-Clips werden mittig mit
unscharfem Hintergrund eingesetzt. Zugang ist über eine PIN geschützt.
> Stand: Grundgerüst mit Anmeldung. Import, Schnitt und Oberfläche folgen.
> Stand: Anmeldung, Import des Exports und Upload der Videos laufen. Der Schnitt folgt.
## Voraussetzungen
@@ -29,11 +29,11 @@ unscharfem Hintergrund eingesetzt. Zugang ist über eine PIN geschützt.
```bash
npm install
cp .env.example .env # APP_PIN eintragen
APP_PIN=1234 npm run dev
npm run dev
```
`npm run dev` startet den Express-Server samt Vite im Entwicklungsmodus auf
einem Port (`PORT`, Vorgabe 3000). In Produktion:
einem Port (`PORT`, Vorgabe 3000) und liest dabei die lokale `.env`. In Produktion:
```bash
npm run build
@@ -49,6 +49,15 @@ NODE_ENV=production APP_PIN=… npm start
| `PORT` | Port des Servers, Vorgabe 3000 |
| `VCH_DATA_DIR` | Ablage für Projekte und Uploads, Vorgabe `./data` |
## Ablauf
1. WhatsApp-Chat mit „Medien anhängen“ exportieren und entpacken.
2. In der App „Neues Video“, den Exportordner wählen. Der Browser liest den
Chat selbst; vorgewählt ist Montag bis Freitag der Vorwoche.
3. Videos prüfen (Duplikate sind abgewählt) und hochladen. Nur die gewählten
Videos werden übertragen, in Stücken von 8 MB; ein Abbruch lässt sich durch
erneutes Wählen des Ordners fortsetzen.
## Befehle
- `npm test` – Tests (Node-Testrunner)
@@ -57,8 +66,10 @@ NODE_ENV=production APP_PIN=… npm start
## Aufbau
- `server/` – Express-Server: Anmeldung, API, später Import und ffmpeg-Schnitt
- `server/` – Express-Server: Anmeldung, Projekte, Upload in Stücken, ffprobe
- `src/` – React-Oberfläche (Vite)
- `src/lib/whatsapp.js` – liest den Chatexport und ordnet die Videos
- `src/lib/upload.js` – Upload in Stücken mit Wiederaufnahme
- `test/` – Tests
- `Dockerfile` – Produktionsimage mit ffmpeg; Deploy über VCH (`.vch/deploy.yaml`)