Files
WebJammies/README.md
2025-07-09 18:48:51 +02:00

65 lines
2.5 KiB
Markdown

# WebJammies
WebJammies is a project of mine to create a (not very good) internet radio music streaming thingy.
Easy to set up, easy to host, Discord Rich Presence integration, it's (not) all there!
Currently I'm not publishing the source because it looks like [this](https://cdn.novacow.ch/uploads/my_code_is_shit_xdd.png)
It'll become available soon though!
Despite not being available, I'm still finishing this README.
## Installation guide
WebJammies is easy to install, first, get Python 3.10 or above.
For Linux users:
```bash
# Debian / Ubuntu / Mint and other derivatives.
sudo apt install python3
# Fedora / Nobara and other derivatives
sudo dnf install python3
# Arch / EndeavourOS / CachyOS and other derivatives
sudo pacman -S python3
```
For macOS users:
```bash
brew install python3
```
For Windows users:
```powershell
# You can change 3.10 to whatever version, this is just the minimum.
winget install -e --id Python.Python.3.10 --scope machine
```
To get everything working, you need to install both the `pygame` and `discordrp` module.
Best is to create a `venv`, if you don't know how, look up `create venv python <OS you're using here>`
Once you've done that, execute these commands to download the necessary tools:
```bash
pip install discordrp
pip install pygame
```
And copy the `webjammies.py` file over to the directory you've created the `venv` in.
After that, just run `webjammies.py` and you're good to go!
## Setting up a server
Setting up a server is really simple, if you have a webserver already, you can skip ahead, if you don't, well:
I've also got an easy to set up webserver [here](https://git.novacow.ch/Nova/PyWebServer)!
With that out of the way, to set up your webserver for WebJammies, just create a `webjammies` directory at the root of your site,
and put your MP3, OGG or WAVE files there! To make WebJammies actually find them is a little more complicated.
In the `webjammies` folder, create a file called `index.ini`, make it look like this:
```ini
# This is an example `index.ini` file
[FILES]
# This is where your MP3s, OGGs and WAVEs go!
invaders.mp3
skystrike.mp3
momentum.mp3
# Kudos if you can recognise the artist whose songs are here ;)
[META]
# Here goes the metadata of the songs, in order of how they sit in [FILES]
Invaders by Hinkik
Skystrike by Hinkik
Momentum by Hinkik
[EOF]
# [EOF] is necessary to tell the parser the file is finished and no data goes beyond.
```
And that's all! Now WebJammies will be able to find and play back the files you put there!