Discord bot for CMU Courses, CMU Eats, and other ScottyLabs services
- TypeScript 99.2%
- Nix 0.8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
add an instruction to check that the Privileged Gateway Intents are enabled, recommend the Administrator permission, state the bot should go online if it works, along with other minor tweaks to improve clarity |
||
| .forgejo | ||
| .vscode | ||
| docs | ||
| drizzle/20251216201838_powerful_turbo | ||
| src | ||
| tests | ||
| .editorconfig | ||
| .env.example | ||
| .gitignore | ||
| .oxlintrc.json | ||
| biome.jsonc | ||
| CODEOWNERS | ||
| deno.json | ||
| deno.lock | ||
| devenv.lock | ||
| devenv.nix | ||
| devenv.yaml | ||
| docker-compose.yml | ||
| drizzle.config.ts | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE-APACHE-2.0 | ||
| LICENSE-MIT | ||
| README.md | ||
| secretspec.toml | ||
Dalmatian
Dalmatian is a Discord bot designed for CMU students, providing easy access to campus resources like CMU Courses and CMU Eats right at your fingertips!
Getting Started
Prerequisites
- devenv - provides Deno and other tooling via Nix
Setup
For detailed setup instructions including creating a Discord bot, obtaining API credentials, and configuring your development environment, see docs/SETUP.md.
Quick setup:
- Install devenv (see link above)
- Create a Discord bot at https://discord.com/developers/applications and invite it to a server you can test in
- Get your
DISCORD_TOKENandDISCORD_CLIENT_IDand put them in.env:cp .env.example .env # Edit .env with your Discord bot credentials
Running the Bot
Authenticate once per machine with:
nix run git+https://git.cmu.dev/ScottyLabs/kennel#login
Then start the bot and a local PostgreSQL database:
devenv up
Database migrations and slash command registration happen automatically when the bot starts. The first run may take a while as devenv downloads its tooling.
Deployment
Production runs on Kennel via devenv and secretspec.
Contributing
Please read CONTRIBUTING.md before you contribute to this project!