Add SQLite database for dynamic guild management
Features: - SQLite database with better-sqlite3 for guild configurations - Auto-registration when bot joins new guilds with welcome messages - Soft delete system preserves settings when bot is removed - Dynamic configuration via /config slash command with subcommands - Automatic migration from config.json to database on first run - Support for scheduled events with timezone preservation Technical Implementation: - Node.js 20 for better SQLite compatibility in Docker - Full Debian base image with npm for reliable native module compilation - Database persistence via Docker volume (./data) - Hybrid configuration system (database primary, file fallback) - JSON storage for complex schedule objects with timezone support Database Schema: - guilds table with soft delete (is_active flag) - scheduled_events table with JSON schedule storage - bot_config table for global settings - Auto-initialization and seeding from existing config Admin Features: - /config show - View current server settings - /config subcommands - Update prefix, volume, features, etc. - Administrator permissions required for configuration changes - Graceful handling of missing or malformed data 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -100,6 +100,7 @@ pnpm build && pnpm up
|
||||
```
|
||||
|
||||
**Benefits of Docker Compose:**
|
||||
|
||||
- Update `config.json`, `sfx/`, and `conf/` files without rebuilding the image
|
||||
- Automatic restart on failure
|
||||
- Easy log management
|
||||
@@ -137,7 +138,7 @@ pnpm image:run
|
||||
```
|
||||
!funfact # Random fun fact
|
||||
!funfact 42 # Specific fun fact #42
|
||||
!hamfact # Random ham radio fact
|
||||
!hamfact # Random ham fact
|
||||
!dance # ASCII dance animation
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user