Start · Devlog

Tag 1 · Montag, 18. Mai 2026

Montag, 2026-05-18 — Tag 1

Spieler-Sicht

Mukke ist geboren — und gleich am ersten Abend live. Mukke ist deine eigene Musik-Bibliothek auf deinem eigenen Server: Musik hochladen, ordnen, abspielen. Deine Musik, dein Server, kein Feed, keine Werbung.

An diesem ersten Tag steht schon das ganze Grundgerüst:

  • Bibliothek & Player — Songs hochladen, in Alben und nach Interpret:innen sehen, abspielen. Cover-Bilder werden automatisch aus deinen Dateien gezogen.
  • Playlists — eigene Listen und smarte, automatisch befüllte Playlists. Such- und Detailseiten für Alben und Interpret:innen.
  • Studio — der zweite Modus: eine Tonspur mit Wellenform anschauen, Marker setzen (Strophe, Hook, Bridge …), Text Zeile für Zeile auf den Takt antippen und als LRC-, SRT- oder JSON-Datei exportieren.

Alles läuft ab heute Abend unter mukke.mana.how.

Macher-Sicht

Tag 1 ist der Spin-out: Mukke wird aus managarten/apps/mukke herausgelöst und als eigenständige föderierte Vereins-App neu aufgesetzt. In einem Abend von leerem Repo bis live deployed.

Die Etappen, der Reihe nach:

  • μ-0 — Repo-Skelett. Turborepo + pnpm-Workspace, apps/api (Hono+Bun), apps/web (SvelteKit 2 / Svelte 5 runes-only), packages/shared. API zunächst nur /healthz, /readyz, /.well-known/mana-app.json.
  • μ-1 — Backend Library-CRUD. 45 Endpoints code-complete, Drizzle mit pgSchema('mukke'), JWKS-Bearer-Auth nach herbatrium/comicello- Muster. Der große +8694-Commit.
  • μ-2 — Web-Foundation, Library, Player, Upload. Library-Ansicht, Player, Upload-Flow plus Cover-Cache. QA-Wrapper: Dev-Stack-Skript, Smoke-Probes, QA-Checklist.
  • μ-6 — LIVE. Deploy-Artefakte gebaut, dann produktiv geschaltet. Direkt nach dem Live-Gang der Upload-Flow von Direct-Upload auf das mana-media-CAS-Gateway umgebaut — Audio gehört in den S3/MinIO-Bucket mukke-storage, nie in die lokale DB.
  • μ-3 — Library-Politur. Playlist-Detail, Album-/Artist-Detail, Smart-Playlists, Suche.
  • μ-4 — Studio-Kern. Wavesurfer-7-Wellenform, Marker-Layer, Lyrics-Sync (Tap-to-timestamp), Export LRC/SRT/JSON.

Die Phasen-Nummern laufen bewusst nicht-linear (μ-6 kam vor μ-3/μ-4), weil „live und ehrlich" Vorrang vor „der Reihe nach" hatte. STATUS.md wurde nach jeder Etappe nachgezogen — die Abschluss-Notizen sind die Eigen-Archäologie dieses Tages.

Stats

13
Commits
+15694/-364
Zeilen
97
Files
1.3 h
Aktiv
Erster Commit
20:39 (Montag)
Letzter Commit
22:54
Spannweite
2.3 Stunden
Aktiv (ohne Pausen > 30min)
1.3 Stunden
Pausen
1
Längster Fokus
0.7 Stunden

Wo wurde gearbeitet

  • 17% apps/web/src/routes
  • 15% apps/web/src/lib
  • 11% apps/api/src/routes
  • 7% packages/shared/src
  • 5% STATUS.md

Commits (13)

Volle Liste aufklappen
  • 1ab29b4 μ-0: repo skeleton for mukke spin-out
  • 5ffeebf μ-1: backend library-CRUD code-complete (45 endpoints)
  • 6a7ba2d μ-2.a/b: web foundation + library + player
  • 33d01a1 μ-2.c: upload-flow + cover-cache
  • deafed8 status: μ-2.c-Abschluss-Notiz nachgezogen
  • 82d07d9 μ-2.qa: dev-stack wrapper + smoke-probes + QA-Checklist
  • 2603412 μ-6.1: production deploy artifacts
  • 99b6fa6 μ-6: LIVE 🚀 — STATUS-Update
  • db6c2f9 μ-6.10: upload-flow auf mana-media CAS-Gateway umgebaut
  • 44bebdc μ-3 polish: playlist-detail, album/artist-detail, smart-playlists, search
  • 6c3dc41 status: μ-3 + μ-6.10 abschluss-notiz
  • 928591e μ-4 studio: wavesurfer + markers + lyrics-sync + LRC/SRT/JSON export
  • f470a2a status: μ-4 Studio abschluss-notiz
Geschrieben mit Claude — Hand veredelt