TheOnlyMace 75ac91eecc Add new features and enhancements to the WebUI and dashboard components
- Updated package.json to include new dependencies: `@radix-ui/react-dialog` and `cmdk`.
- Enhanced global styles in globals.css for improved visual depth in dark mode.
- Refactored dashboard page components to improve layout and accessibility, including new icons and responsive design adjustments.
- Implemented suspense handling in commands page for better loading states.
- Improved sidebar navigation with new icons and mobile responsiveness.
- Added FieldAnchor components across various forms for better accessibility and structure.
- Enhanced commands manager with search parameter handling for improved user experience.
- Updated multiple module forms to include FieldAnchor for consistent layout and accessibility.
2026-07-22 19:44:55 +02:00

Nexumi

Nexumi is a public Discord bot with dashboard architecture, built as a TypeScript monorepo.

Phase 1 scope

  • Monorepo foundation with apps/bot and packages/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

  1. Copy .env.example to .env and fill required values.
  2. Install dependencies:
    • pnpm install
  3. Generate Prisma client:
    • pnpm prisma:generate
  4. Apply database migrations:
    • pnpm prisma:migrate
  5. Start stack:
    • docker compose up -d
  6. Start bot locally:
    • pnpm --filter @nexumi/bot dev

Verification commands

  • pnpm typecheck
  • pnpm lint
  • pnpm 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):

  1. Stop bot/web services.
  2. Copy dump into postgres container.
  3. Run psql restore against nexumi database:
    • docker compose exec -T postgres psql -U nexumi -d nexumi < /path/to/backup.sql
  4. Start services again.
Description
A Discord Bot
Readme 5.5 MiB
Languages
TypeScript 96.4%
PHP 2.8%
CSS 0.5%
Dockerfile 0.2%