feat: add STEM file support per track
- DB: stems table with trackId FK, fileKey, sortOrder, createdById - API: GET/POST/DELETE stems, presigned upload URL, ZIP download via fflate - Web: StemUploadDropzone (multi-file, batch upload, progress bars) - Web: StemList with download-all-ZIP and per-stem delete - Web: STEMs tab in track detail view - Icon: add 'music' icon to inline set - Auto-migration runs stems table creation on boot Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
45
CLAUDE.md
Normal file
45
CLAUDE.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# Music Hub
|
||||
|
||||
Webapp für Label-Kollaboration. Stack: SvelteKit + Hono + Postgres.
|
||||
|
||||
## Aktueller Stand
|
||||
|
||||
<!-- Zuletzt aktualisiert: 2026-04-13 via /save -->
|
||||
|
||||
**Sprint / Phase:** Deploy + erster Klienten-Test
|
||||
|
||||
**Zuletzt implementiert:**
|
||||
- App live auf hub.mydrugismusic.com (Registrierung, Login funktionieren)
|
||||
- Coolify-Deploy via Webhook-Script (kein UI nötig, im Memory dokumentiert)
|
||||
- DATABASE_URL auf public port umgestellt (interner Coolify-Hostname war nicht erreichbar)
|
||||
- README geschrieben und gepusht
|
||||
|
||||
**Als nächstes:**
|
||||
- RESEND_API_KEY setzen → echter E-Mail-Versand
|
||||
- App-Bugs fixen (User: „man kann quasi nichts machen außer Profil/Karte")
|
||||
- DB `is_public` nach Tests wieder deaktivieren
|
||||
|
||||
**Offene Punkte:**
|
||||
- Interner Coolify-Netzwerkfehler (API→DB via UUID-Hostname) ungeklärt
|
||||
|
||||
## Decisions
|
||||
|
||||
`docs/decisions/` — Architecture Decision Records für nicht-offensichtliche Entscheidungen.
|
||||
Template: `~/.claude/templates/adr.md`
|
||||
Anlegen wenn: Alternative verworfen, Constraint akzeptiert, Richtungsentscheidung getroffen.
|
||||
|
||||
## Specs
|
||||
|
||||
`specs/` — ein File pro Sprint oder Feature, bevor Code geschrieben wird.
|
||||
Template: `~/.claude/templates/spec.md`
|
||||
|
||||
Konvention:
|
||||
- Neues Sprint/Feature → erst `specs/sprint-N.md` oder `specs/feature-name.md` anlegen
|
||||
- Kanban-Task verlinkt auf die Spec-Datei
|
||||
- Aktive Spec steht im `## Aktueller Stand`
|
||||
|
||||
## Kanban
|
||||
|
||||
Board-ID: `cfddb658-6f5b-4d36-b311-369307a5fc51`
|
||||
|
||||
Konvention: Bei Session-Start `get-board-info` aufrufen und offene Tasks zeigen. Aktive Tasks nach In Progress ziehen, erledigte nach Done.
|
||||
Reference in New Issue
Block a user