Context
Fără conturi, fără reclame, fără abonamente. Doar muzica mea, pe hardware-ul meu.
Cauți o melodie sau un artist, dai click pe un rezultat și redarea pornește imediat ce descărcarea e gata. Fiecare melodie rămâne apoi pe server, așa că biblioteca crește singură pe măsură ce ascult.
Ce am făcut
- Un backend FastAPI care caută în catalogul muzical YouTube, descarcă cu yt-dlp și face streaming la rezultat.
- MP3-uri la cea mai bună calitate disponibilă, cu toate metadatele și coperta inclusă.
- Un frontend într-un singur fișier, în HTML, CSS și JavaScript simplu. Merge bine pe telefon prin Tailscale și are scurtături de tastatură pe desktop.
- Compatibil cu Navidrome: melodiile ajung în folderul pe care îl urmărește Navidrome, așa că apar și în orice aplicație Subsonic pentru ascultare offline.
Deploy
Fiecare push pe main construiește o nouă imagine Docker cu GitHub Actions și o urcă în GHCR. Watchtower o preia în mai puțin de 30 de secunde și repornește containerul. Nu trebuie niciodată să intru pe server ca să fac deploy.
Ce urmează
Lista e lungă: cozi cu shuffle și repeat, playlisturi, favorite, versuri, import de playlisturi YouTube, egalizator, sleep timer, o vizualizare „now playing” pe tot ecranul și suport PWA offline.
Întoarce paginaCapitolul 5: Shift