Official Coding Shitpost Central Discord Bot
Please ignore this repo. This is just a management bot I made for my stupid german coding discord server...
German description of the Discord Server:
Deutscher Server für diverse programmier- und nerd Themen.
Language-Bashing, shitposting und Autismus stehen an der Tagesordnung.
Jeder ist willkommen da jede Programmiersprache gleichermaßen diskreditiert wird!
I'm sorry
Read: CONTRIBUTING.md
Du hast 2 Optionen: Lokale installation und GitHub Codespaces. Ersteres ist aufwändiger. Bei letzterem musst du deine Config am besten abspeichern, weil sie bei Codespaces irgendwan zusammen mit dem Codespace gelöscht wird.
bun Version: >=1.irgendwas
- Terminal aufmachen und dorthin navigieren, wo man es downloaden möchte
- Sichergehen, dass bun installiert ist. Teste mit:
bun --version
. Wenn es eine Versionsnummer zurückgibt, ist bun installiert. Wenn nicht, bun hier runterladen. - Repository klonen und hinein navigieren. Wenn Git installiert ist:
git clone https://github.com/NullDev/CSZ-Bot.git && cd $_
Wenn nicht, hier herunterladen und die ZIP extrahieren (Gott stehe dir bei) und dann in den Ordner navigieren.
- Dependencies installieren:
bun i
- Weiter machen mit den gemeinsamen Schritten (siehe unten)
- Klicke auf den grünen "Code"-Button
- Wähle den Tab "Codespaces"
- Klicke auf das "+" für einen neuen Codespace
- Warte
- Weiter machen mit den gemeinsamen Schritten (siehe unten)
- Das Config-Template config.template.json kopieren und als
config.json
einfügen und bearbeiten:
cp config.template.json config.json
$EDITOR config.json
Tip
Die Datei kann Kommentare und Trailing-Commas (JSONC). Wenn du nicht VSCode verwendest, musst du das ggf. noch einstellen.
- Das Template ist für die Coding-Test-Zentrale vorausgefüllt. Es fehlen noch:
- Um einen Bot zum Testen anzulegen, einfach den Instruktionen im Discord Developer Portal folgen.
- Die Applikation muss als "Bot" gesetzt werden.
- Es müssen beide Gateway Intents eingeschalten werden.
- Ersetze
<CLIENT_ID>
durch die Application-ID - Ersetze
<BOT_TOKEN>
durch das Bot-Token
- Um IDs kopieren zu können, den "Developer Mode" in den Discord Einstellungen aktivieren. Mit Rechtsklick kann man dann die IDs kopieren.
- Um einen Bot zum Testen anzulegen, einfach den Instruktionen im Discord Developer Portal folgen.
- Das Script starten.
Mit Hot-Reload:
bun watch
Ohne Hot-Reload:
bun start
Formatieren und Linten passiert durch lefthook automatisch beim Committen/Pushen. Manuell kannst du das machen:
- Formatieren:
bun format
- Linten:
bun lint
- Fixbare Linter-Fehler automatisch fixen:
bun lint:fix
- CI-Checks lokal laufen lassen:
bun ci
- Unit-Tests ausführen:
bun test
- Nur Tests, die auf ein Pattern matchen:
bun test <pattern>
(z. B.bun test smoke
)
- Nur Tests, die auf ein Pattern matchen:
Entweder via nix-shell
oder nix develop
letzteres benötigt Nix-Flake support.
Nix-Flakes nutzen ohne diese eingeschaltet zu haben geht via:
nix --extra-experimental-features "flakes nix-command" develop
Wer auch immer einen Plan von Nix hat, kann das hier gerne weiter ausführen.