FluffBoost

Developer overview

Architecture, stack, and how the FluffBoost bot fits together.

This section is for developers who want to run, self-host, or contribute to FluffBoost. If you just want to use the bot in your server, the Guide is what you're after.

What FluffBoost is

FluffBoost is a sharded Discord bot (Discord.js v14) that delivers scheduled motivational quotes and rotates the bot's presence. It runs as a single process that supervises shard child processes, backed by PostgreSQL, Redis, and an Express health-check API.

The monorepo

The repository is a Bun-workspace + Turborepo monorepo:

fluffboost/
├── apps/
│   ├── discord/   # the bot (Discord.js, Drizzle, BullMQ, Express)
│   └── web/       # this site — marketing + docs (Next.js + Fumadocs)
├── turbo.json
└── package.json   # workspace root

The bot at a glance

LayerTechnology
RuntimeBun (runs TypeScript directly)
Discord libraryDiscord.js v14 (ShardingManager)
DatabasePostgreSQL 16 via Drizzle ORM
Job queueBullMQ on Redis 7
HTTPExpress 5 (/api/health)
DeploymentDocker image on Dokploy
  • apps/discord/src/app.ts — main process: verifies DB/Redis, starts the Express API, then spawns shards.
  • apps/discord/src/bot.ts — each shard: Discord client, event listeners, a BullMQ queue + worker, then logs in.
  • apps/discord/src/worker/ — two recurring jobs: set-activity (rotate presence) and send-motivation (evaluate per-guild schedules every minute).

On this page