An open API service indexing awesome lists of open source software.

https://github.com/mbaraa/dankmuzikk

(WIP) Create, Share and Play Music Playlists.
https://github.com/mbaraa/dankmuzikk

dank htmx music muzik templ youtube

Last synced: about 1 month ago
JSON representation

(WIP) Create, Share and Play Music Playlists.

Awesome Lists containing this project

README

        


DankMuzikk



Create, Share and Play Music Playlists.



Go Report Card
rex-deployment
rex-deployment


## About

**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._

## Contributing

IDK, it would be really nice of you to contribute, check the poorly written [CONTRIBUTING.md](/CONTRIBUTING.md) for more info.

## Roadmap

- [x] Search YouTube for music
- [x] Web UI
- [x] Audio player
- [x] Accounts and Profiles
- [x] Playlists
- [x] Share playlists
- [x] Vote songs in playlists
- [ ] Songs queue
- [x] Add songs to queue
- [ ] View/Edit queue
- [ ] Expandable player
- [x] Mobile
- [ ] Desktop
- [x] Share songs
- [ ] Player's menu
- [ ] Import **public** playlists from YouTube
- [ ] Update profile
- [ ] Cross device control
- [ ] Offline support
- [ ] Songs' metadata fixer
- [x] Lyrics

## Technologies used

- **[Go](https://golang.org)**: Main programming language.
- **[JavaScript](https://developer.mozilla.org/en-US/docs/Web/javascript)**: Dynamic client logic.
- **[Python](https://python.org)**: Used for the YouTube download service.
- **[templ](https://templ.guide)**: The better [html/template](https://pkg.go.dev/html/template).
- **[htmx](https://htmx.org)**: The front-end library of peace.
- **[GORM](https://gorm.io)**: The fantastic ORM library for Golang.
- **[MariaDB](https://mariadb.org)**: Relational database.
- **[yt-dlp](https://github.com/yt-dlp/yt-dlp)**: YouTube download helper.
- **[pytube](https://github.com/pytube/pytube)**: YouTube download helper.
- **[minify](https://github.com/tdewolff/minify)**: Minify static text files.

## Run locally

1. Clone the repo.

```bash
git clone https://github.com/mbaraa/dankmuzikk
```

2. Create the docker environment file

```bash
cp .env.example .env.docker
```

3. Run it with docker compose.

```bash
docker compose up -f docker-compose-all.yml
```

3. Visit http://localhost:20250
4. Don't ask why I chose this weird port.

## Acknowledgements

- **This project is not affiliated with YouTube or Google, or anyone to that matter in any sort of ways.**
- Colorscheme is inspired from [Dankpods](https://www.youtube.com/@DankPods)
- Loader’s CSS was made by [@thamudi](https://github.com/thamudi)

---

Made with 🧉 by [Baraa Al-Masri](https://mbaraa.com)