by Aria Rees & Clove Nytrix Doughmination Twilight
A Discord bot for LGBTQIA+ servers — keyword emoji reactions, identity profiles, lookups, and a few fun extras.
The easiest way to add the bot to your Discord server is the official install link.
- Node.js 20 or newer
- A Discord application + bot token (Discord Developer Portal)
git clone https://github.com/Girls-Network/GayBot-v2.git
cd GayBot-v2
npm install
cp .env.example .env # then fill in DISCORD_TOKEN, etc.| Script | What it does |
|---|---|
npm run dev |
Run the bot under nodemon — restarts on TS file changes |
npm run start |
Run the bot once via ts-node (no rebuild needed) |
npm run build |
Compile TypeScript into dist/ |
npm run lint |
ESLint over src/**/*.ts and root JS, with --fix |
npm run format |
Prettier write across all source/config/markdown |
npm run prettylint |
Lint then format. Run this before every PR. |
npm run test |
Type-check the codebase via tsc --noEmit |
CI runs lint, prettier --check, and test against every PR — local prettylint && test exiting clean is a good signal CI will be green.
src/
├─ main.ts # Entry: client setup, event loading, reaction queue
├─ shard.ts # Sharding wrapper around main.ts
├─ commands/ # Slash commands (auto-discovered)
├─ events/ # Discord gateway event handlers (auto-discovered)
├─ handlers/ # Command + error registration
├─ utils/ # Logger, banner rotator, identity manager, etc.
├─ pk/ + plural/ # PluralKit and Plural client + cache + resolver
└─ configs/ # Static reaction/emoji JSON
Discord.js v14, TypeScript, Node 20, Docker (deployment), ESLint v9 + typescript-eslint (linting), Prettier (formatting).
- Licence — MIT. See LICENCE.
- Security — Vulnerability reporting in SECURITY.md.
- Contributing — Process and standards in CONTRIBUTING.md.
- Code of Conduct — Community expectations in CODE_OF_CONDUCT.md.
- Privacy Policy — Data handling in Privacy.md.
- Terms of Service — Usage terms in ToS.md.
This project was originally made by MeltyMooncakes — we still credit her as the original author even though we now own and maintain it.
Additional credit to ThatGirl_Photographer for parts of the old bot that have carried over into this rewrite.