Hitonabi
|
3e921fc0c9
|
Etappe 5: Auth + Rate-Limiting
- JWT-Auth (Access 15min/Refresh 7 Tage)
- Rate-Limiting (100/min pro Client/API-Key)
- API Key Management
- OAuth2 Password Scheme
|
2026-07-21 17:19:34 +02:00 |
|
Hitonabi
|
518155051f
|
Etappe 3: Metadaten-Lookup + Pre-Scan
- SQLite-Cache für API-Rate-Limits (LRU, 10k Einträge)
- TMDB/MusicBrainz/TheTVDB Clients
- Pre-Scan-Modul für TOC-Lesung ohne Ripping
- Metadaten-Preview UI
- Jellyfin-Formatierung (NFO + Images)
- API Endpoints für Lookup, Confirm, Format
|
2026-07-21 17:17:35 +02:00 |
|
Hitonabi
|
0cf5413ac0
|
Merge remote-tracking branch 'origin/main'
|
2026-07-21 17:10:48 +02:00 |
|
Hitonabi
|
a505415898
|
SAVEPOINT v1.2: UI läuft!
- Rippy UI auf Port 80
- Git Sync in Arcane
- Alle Container healthy
|
2026-07-21 17:07:54 +02:00 |
|
Arcane
|
25cba0e18d
|
UI: Port 80 + lucide-react
|
2026-07-21 15:07:36 +00:00 |
|
Arcane
|
596ded1a4a
|
postgres: Image von 16-slim auf 16
|
2026-07-21 14:58:22 +00:00 |
|
Hitonabi
|
4d1f613a1c
|
Etappe 5: API + Auth + WebUI — Erste Implementierung
- React-UI: Dashboard mit Stats, Geräte, Jobs
- API: /jobs und /devices endpoints
- CORS aktiviert für UI-Kommunikation
|
2026-07-21 16:52:30 +02:00 |
|
Hitonabi
|
90e6f81d98
|
tasks.py: detect_disc_type wieder importieren
|
2026-07-21 16:49:01 +02:00 |
|
Hitonabi
|
719aa9408d
|
tasks.py: detect_disc_type aus ripping.py importieren
|
2026-07-21 16:48:44 +02:00 |
|
Hitonabi
|
42f19a0806
|
ripping.py: HandBrakeCLI-Check + Typ-Erkennung
|
2026-07-21 16:48:32 +02:00 |
|
Hitonabi
|
9e73d065f9
|
Etappe 2: Ripping-Pipeline — Erste Implementierung
- DockerfileWorker: abcde, flac, ffmpeg, handbrake-cli installiert
- ripping.py: Ripping-Module für DVD/Blu-ray mit HandBrake
- tasks.py: Disc-Typ-Erkennung + passendes Ripping-Modul
- docker-compose.yml: Output-Verzeichnis /output hinzugefügt
- output/ Verzeichnis erstellt
WIP: CD-Ripping mit abcde noch nicht implementiert
|
2026-07-21 16:47:50 +02:00 |
|
Hitonabi
|
5d23b1e6c8
|
Etappe 1: Container-Infrastruktur + udev-Erkennung
- Docker Compose mit 5 Containern (api, worker, ui, postgres, redis)
- Basis-Dockerfiles für FastAPI, Celery, React/Vite, PostgreSQL, Redis
- udev-Regel + Python-Daemon für Disc-Einwurf-Erkennung
- Device-Resolver (UUID/Serial → /dev/disc/<uuid>)
- Celery-Worker mit Dummy-Job-Task (Disc-Erkennung)
- .env.example mit Umgebungsvariablen
- .gitignore für Docker, .env, node_modules
- README, SAVEPOINT, ROADMAP aktualisiert
|
2026-07-21 14:59:09 +02:00 |
|