# musikat

> Self-hosted open-source music downloader that searches Deezer or Spotify, fetches audio from YouTube, tags files, and saves to Navidrome or local downloads.

- **Category:** Music Streaming
- **Licence:** MIT
- **Open source:** oss
- **Languages:** JavaScript, Python
- **Platforms:** Docker Compose, Build from Source
- **Tags:** Audio, Spotify, Youtube, Music Downloader, Yt Dlp, Music Library, Music Server, Deezer, Navidrome, Javascript, Python, Fastapi, Self Hosted, Metadata tagging

## Description

Musikat is a self-hosted web app that downloads music from YouTube using track information from Deezer (no API key needed) or Spotify (with credentials). It writes ID3 tags and cover art to each file, then either places the music into one or more Navidrome library folders on the server or sends it to the browser for local saving. The stack is FastAPI plus vanilla JavaScript, with yt-dlp and FFmpeg handling audio extraction and mutagen doing the tagging. Multiple Navidrome roots are supported, a background sync can mark tracks already present in the library, and YouTube cookies can be supplied to avoid bot blocks. You can deploy with Docker Compose or a plain Python virtual environment. The code is MIT-licensed and meant for personal use.

## Links

- [Homepage](https://github.com/soggy8/musikat)
- [GitHub Repository](https://github.com/soggy8/musikat)

---
Source: https://selfhost.directory/project/musikat