djs-core
Type-safe Discord bots with file-based routing on top of discord.js.
djs-core is a framework on top of discord.js that kills the boring scaffolding. Drop files in folders — commands, buttons, events register themselves. Options are typed. Database is built in.
Philosophy
File-based, not config-based. Your project structure is your bot structure. No manual registration, no index files to update.
Typed by default. Declare command options on the builder — the options object in .run() is fully inferred.
Built for the long run. djs-core check catches deprecated patterns. djs-core generate scaffolds files the linter won’t hate.
What it handles
- Slash commands, context menus, autocomplete
- Buttons, modals, all select menu types
- Events and cron tasks
- Native Drizzle database —
client.db,djs-core dbCLI - Third-party plugins via
definePlugin
Packages
Core runtime — loads and runs your bot.
@djs-core/devCLI — dev, build, check, generate, test, db.
@djs-core/dbDrizzle layer — client.db and migrations.
Mock helpers for bun:test — ships with dev.