04e9ffad28b10c2735d4347bf5ca0735b0c87895
- Added support for multiple captcha providers including Google reCAPTCHA (v2 and v3), hCaptcha, and Cloudflare Turnstile. - Introduced new fields in the verification configuration for selecting captcha providers and enabling alt-account detection. - Implemented logic to handle verification attempts and flag potential alt accounts based on IP and invite code analysis. - Updated environment configuration to include necessary keys for captcha providers. - Enhanced the user interface to allow selection of captcha providers in the verification setup. - Improved backend handling of verification records to store additional data related to captcha provider usage.
Nexumi
Nexumi is a public Discord bot with dashboard architecture, built as a TypeScript monorepo.
Phase 1 scope
- Monorepo foundation with
apps/botandpackages/shared - PostgreSQL + Redis compose stack
- Prisma core schema (
Guild,GuildSettings,User,Case) plus moderation tables (Warning,ModNote) - Command and module framework for slash command routing
- Permission layer and i18n starter (
de+en) - BullMQ integration for persistent moderation jobs (temp-ban expiration)
- Complete moderation reference command set for Phase 1
Quickstart
- Copy
.env.exampleto.envand fill required values. - Install dependencies:
pnpm install
- Generate Prisma client:
pnpm prisma:generate
- Apply database migrations:
pnpm prisma:migrate
- Start stack:
docker compose up -d
- Start bot locally:
pnpm --filter @nexumi/bot dev
Verification commands
pnpm typecheckpnpm lintpnpm test
Database
See docs/DATABASE.md for migrations, backup and restore runbooks.
Backup and restore note
Phase 1 includes the BullMQ foundation for scheduled jobs. Database backup rotation is configured via BACKUP_RETENTION_DAYS and the backups volume is already reserved in compose.
Restore flow (manual, PostgreSQL container):
- Stop bot/web services.
- Copy dump into postgres container.
- Run
psqlrestore againstnexumidatabase:docker compose exec -T postgres psql -U nexumi -d nexumi < /path/to/backup.sql
- Start services again.
Description
Languages
TypeScript
96.4%
PHP
2.8%
CSS
0.5%
Dockerfile
0.2%