-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathREADME.md.tmpl
More file actions
109 lines (66 loc) · 2.16 KB
/
README.md.tmpl
File metadata and controls
109 lines (66 loc) · 2.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109

[](https://pkg.go.dev/github.com/keshon/melodix) [](https://goreportcard.com/report/github.com/keshon/melodix) [](https://github.com/keshon/melodix/releases) [](LICENSE)
# Melodix
Self-hosted Discord music bot with a CLI player, built in Go.
Designed to run for long sessions with minimal failure rate.
---
## Quick start
### Run Discord bot
1. Create a bot in Discord Developer Portal
2. Get your token
3. Run:
```bash
go build -o melodix-discord ./cmd/discord
DISCORD_TOKEN=your-token ./melodix-discord
````
Full setup guide: see `docs/running.md`
---
### Run CLI player
```bash
go build -o melodix-cli ./cmd/cli
./melodix-cli
```
---
## Features
* Discord bot and CLI player share the same playback engine
* Multiple parsers with automatic fallback (yt-dlp, kkdai, ffmpeg)
* Recovery streams for unstable or broken sources
* Queue system per guild (Discord) or per process (CLI)
* Fully self-hosted
---
## Try Melodix
### Use the official server
Try the bot in [Ctrl+Z](https://discord.gg/uDnTenPxAY) Discord server:
enter voice channel and use slash commands in `#bot-music-spam`.
a
---
### Download a release
Download pre-built binaries:
https://github.com/keshon/melodix/releases
---
## Commands (Discord)
<!-- generated -->
{{ .CommandSections }}
<!-- /generated -->
Example usage:
```bash
/play Never Gonna Give You Up
/play https://www.youtube.com/watch?v=dQw4w9WgXcQ
/play http://stream-uk1.radioparadise.com/aac-320
/play 42
/history
```
---
## Running
Requirements:
* FFmpeg in PATH
* yt-dlp (optional, recommended)
For full setup (Discord bot, env config, Docker):
see `docs/running.md`
---
## Documentation
* Running and setup: `docs/running.md`
* Architecture: `docs/architecture.md`
---
## License
Melodix is licensed under the [MIT License](https://opensource.org/licenses/MIT).