Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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: 18 days 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 (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-10-27T18:25:40.000Z (19 days ago)
- Last Synced: 2024-10-27T22:36:03.414Z (19 days ago)
- Topics: bot, discord, discord-bot, nodejs, nulldev, roles
- Language: TypeScript
- Homepage:
- Size: 19.1 MB
- Stars: 8
- Watchers: 3
- Forks: 24
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# CSZ-Bot
[![CSZ Discord](https://img.shields.io/discord/618781839338897443?color=%237289DA&label=CSZ%20Discord&logo=discord&logoColor=white)](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
bun Version: >=1.irgendwas
1. Terminal aufmachen und dorthin navigieren, wo man es downloaden möchte
2. Sichergehen, dass [bun](https://bun.sh) installiert ist. Teste mit: `bun --version`. Wenn es eine Versionsnummer zurĂĽckgibt, ist bun installiert.
**Wenn nicht**, bun [hier](https://bun.sh) 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
bun i
```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
bun watch
```Ohne Hot-Reload:
```sh
bun start
```### Housekeeping
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 ` (z. B. `bun test smoke`)## âť„ 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.