feat: initialize booster role bot with database and Discord integration

- Add drizzle configuration for SQLite database
- Create package.json with necessary dependencies and scripts
- Implement configuration loading for Discord bot
- Define permissions for roles
- Set up database schema for booster roles
- Create Discord client and commands for managing booster roles
- Handle guild member updates to manage roles based on boost status
- Implement boost eligibility checks and role management logic
- Add tests for boost eligibility and role guards
- Create service for managing booster roles with in-memory storage for testing
- Configure TypeScript settings for the project
This commit is contained in:
MythEclipse
2026-05-15 23:03:35 +07:00
parent 63d3e0a8c1
commit c6b1087eb3
20 changed files with 919 additions and 0 deletions
+26
View File
@@ -0,0 +1,26 @@
{
"name": "booster-role-bot",
"version": "0.1.0",
"type": "module",
"private": true,
"scripts": {
"dev": "bun run src/index.ts",
"test": "bun test",
"typecheck": "tsc --noEmit",
"lint": "tsc --noEmit",
"db:generate": "drizzle-kit generate",
"db:migrate": "drizzle-kit migrate"
},
"dependencies": {
"@discordjs/builders": "latest",
"better-sqlite3": "latest",
"discord.js": "latest",
"drizzle-orm": "latest"
},
"devDependencies": {
"@types/better-sqlite3": "latest",
"@types/bun": "^1.3.14",
"drizzle-kit": "latest",
"typescript": "latest"
}
}