mirror of
https://github.com/LetUsFlow/Rusty-BruhBot.git
synced 2026-01-06 21:40:44 +01:00
A blazingly 🦀 fast 🚀 Discord soundboard
|
|
||
|---|---|---|
| src | ||
| .dockerignore | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| Dockerfile | ||
| LICENSE | ||
| logo.jpg | ||
| README.md | ||
Rusty BruhBot
The legendary BruhBot impoved and rewritten in Rust.
Requirements
Pocketbase
Rusty-BruhBot uses PocketBase to store commands an sounds and accesses the data using PocketBases REST-API.
PocketBase Schema
[
{
"id": "zteq3osgzz3rli1",
"name": "sounds",
"type": "base",
"system": false,
"schema": [
{
"id": "dvimlam0",
"name": "audio",
"type": "file",
"system": false,
"required": true,
"options": {
"maxSelect": 1,
"maxSize": 5242880,
"mimeTypes": [],
"thumbs": [],
"protected": false
}
},
{
"id": "v1dwfeqt",
"name": "command",
"type": "text",
"system": false,
"required": true,
"options": {
"min": null,
"max": null,
"pattern": ""
}
}
],
"indexes": [],
"listRule": "",
"viewRule": "",
"createRule": null,
"updateRule": null,
"deleteRule": null,
"options": {}
}
]
External dependencies
For this bot to work opus needs to be installed on your system. For more details on how to install these dependencies, look at the dependencies section of Songbird. For everything else audio-related BruhBot uses Symphonia, introduced in Songbird 0.4.0.
Configuration
Rusty-BruhBot uses environment-variables to configure the Discord-token and the PocketBase API endpoint. Alternatively, a .env-file can be used:
DISCORD_TOKEN=...
POCKETBASE_API=http://127.0.0.1:8090
Deployment
It is recommended to use Docker for deployment because all dependencies except for PocketBase are bundeled with it. The following example assumes that you have already set up and configured PocketBase as described above:
docker run -d --env-file .env --net=host ghcr.io/letusflow/rusty-bruhbot
