An easy way to store and listen to your music
Download the backend and the frontend then follow these steps:
Install the backend somewhere on your server and keep it running, here is an example with systemctl:
[Unit]
Description=Euphonia backend
After=network-online.target
[Service]
ExecStart=dotnet [Path to backend]/Euphonia.API.dll
WorkingDirectory=[Path to backend]
Restart=on-failure
[Install]
WantedBy=multi-user.target
Just grab everything in the frontend folder and throw it in your web server
Configure your webserver to have your website ready and the backend on /api/ Example (replace "/home/web/example" and "example.org"):
server {
root /home/web/example;
index index.php;
server_name example.org;
location / {
try_files $uri $uri/ =404;
}
location /api/ {
proxy_pass http://localhost:5000;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location ~ (/(vendor|node_module)/|\.json$) {
deny all;
}
}
example.org {
reverse_proxy /api/* localhost:5000
root * /home/web/example
php_fastcgi unix//run/php/php8.1-fpm.sock
file_server {
hide node_modules/
hide vendor/
}
@blocked {
path *.json
}
respond @blocked 403
}
Then you will need to download the following and place them in your path:
- yt-dlp (YouTube only)
- ffmpeg (YouTube only)
- ffmpeg-normalize
Once this is done, go to [your website]/tools.php and enter your password, then write the value returned in data/credentials.json
Login as an admin using the hamburger menu at the top left of the website
Once his is done, a new button will appear at the top left, click on it and fill the form with your music info
[!TODO]: To write
You can change some metadata of your website in web/data/metadata.json
You can also change its style on web/css/customize.cs