https://github.com/nulldev/csz-bot
🤖 Discord management bot with some useless features
https://github.com/nulldev/csz-bot
bot discord discord-bot nodejs nulldev roles
Last synced: 6 months ago
JSON representation
🤖 Discord management bot with some useless features
- Host: GitHub
- URL: https://github.com/nulldev/csz-bot
- Owner: NullDev
- License: mit
- Created: 2020-01-04T22:15:59.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2025-07-15T14:27:33.000Z (7 months ago)
- Last Synced: 2025-07-16T06:50:15.020Z (6 months ago)
- Topics: bot, discord, discord-bot, nodejs, nulldev, roles
- Language: TypeScript
- Homepage:
- Size: 50.1 MB
- Stars: 11
- Watchers: 3
- Forks: 24
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# CSZ-Bot
[](https://discord.gg/csz)

Official Coding Shitpost Central Discord Bot
## :information_source: OwO wats dis?
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
---
## I want to make this stupid bot even worse
Read: [CONTRIBUTING.md](./CONTRIBUTING.md)
## :wrench: Installation
Du hast 2 Optionen: [Lokale installation](#lokale-installation) und [GitHub Codespaces](#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.
### Lokale Installation
node Version: >=24
1. Terminal aufmachen und dorthin navigieren, wo man es downloaden möchte
2. Sichergehen, dass [Node.js](https://nodejs.org) installiert ist. Teste mit: `node --version`. Wenn es eine Versionsnummer zurückgibt, ist Node.js installiert.
**Wenn nicht**, Node.js [hier](https://nodejs.org) runterladen.
3. Repository klonen und hinein navigieren. Wenn Git installiert ist:
```sh
git clone https://github.com/NullDev/CSZ-Bot.git && cd $_
```
Wenn nicht, [hier](https://github.com/NullDev/CSZ-Bot/archive/master.zip) herunterladen und die ZIP extrahieren (Gott stehe dir bei) und dann in den Ordner navigieren.
4. Dependencies installieren:
```sh
npm ci
```
5. Weiter machen mit den [gemeinsamen Schritten](#gemeinsame-schritte) (siehe unten)
### GitHub Codespaces
1. Klicke auf den grünen "Code"-Button
2. Wähle den Tab "Codespaces"
3. Klicke auf das "+" für einen neuen Codespace
4. Warte
5. Weiter machen mit den [gemeinsamen Schritten](#gemeinsame-schritte) (siehe unten)
### Gemeinsame Schritte
1. Das Config-Template [config.template.json](https://github.com/NullDev/CSZ-Bot/blob/master/config.template.json) kopieren und als `config.json` einfügen und bearbeiten:
```sh
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.
2. Das Template ist für die [Coding-Test-Zentrale](https://discord.gg/ekJA6GA3BJ) vorausgefüllt. Es fehlen noch:
- Um einen Bot zum Testen anzulegen, einfach den Instruktionen im [Discord Developer Portal](https://discord.com/developers/applications) folgen.
- Die Applikation muss als "Bot" gesetzt werden.
- Es müssen beide [Gateway Intents](https://discordjs.guide/popular-topics/intents.html#gateway-intents) eingeschalten werden.
- Ersetze `` durch die Application-ID
- Ersetze `` 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.
3. Das Script starten.
Mit Hot-Reload:
```sh
npm run watch
```
Ohne Hot-Reload:
```sh
npm start
```
### Housekeeping
Formatieren und Linten passiert durch lefthook automatisch beim Committen/Pushen. Manuell kannst du das machen:
- Formatieren: `npm run format`
- Linten: `npm run lint`
- Fixbare Linter-Fehler automatisch fixen: `npm run lint:fix`
- Fixbare, aber möglicherweise falsche Fixes anwenden: `npm run lint:fix:unsafe`
- CI-Checks lokal laufen lassen: `npm run ci`
- Unit-Tests ausführen: `npm test`
## ❄ Nix
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.