DankMuzikk is a music player designed for colloborative playlists, where a playlist's collaborators can add and vote for music in a playlist, and the other music player stuff.
Note: this is a fling side-project that could die anytime so don't get your hopes up.
IDK, it would be really nice of you to contribute, check the poorly written CONTRIBUTING.md for more info.
- Search YouTube for music
- Web UI
- Audio player
- Accounts and Profiles
- Playlists
- Share playlists
- Vote songs in playlists
- Songs queue
- Add songs to queue
- View/Edit queue
- Expandable player
- Mobile
- Desktop
- Share songs
- Player's menu
- Import public playlists from YouTube
- Update profile
- Cross device control
- Offline support
- Songs' metadata fixer
- Lyrics
- Refactor the code (never gonna happen)
- Go: Main programming language.
- JavaScript: Dynamic client logic.
- Python: Used for the YouTube download service.
- templ: The better html/template.
- htmx: The front-end library of peace.
- GORM: The fantastic ORM library for Golang.
- MariaDB: Relational database.
- yt-dlp: YouTube download helper.
- pytube: YouTube download helper.
- minify: Minify static text files.
- Clone the repo.
git clone https://github.com/mbaraa/dankmuzikk
- Create the docker environment file
cp .env.example .env.docker
- Run it with docker compose.
docker compose up -f docker-compose-dev.yml
- Visit http://localhost:20250
- Don't ask why I chose this weird port.
- This project is not affiliated with YouTube or Google, or anyone to that matter in any sort of ways.
- Colorscheme is inspired from Dankpods
- Loader’s CSS was made by @thamudi
Made with 🧉 by Baraa Al-Masri