---
title: Valerium
---

Valerium (hereinafter the "Application") is the Discord Boost Monitor bot that removes configured booster-only roles when members stop boosting a server.

## 1. User Documentation

Valerium is a Discord bot service and does not currently publish a public hosted web app for end users.

Operational behavior:

1. On startup, the bot connects to Discord with `Guilds` and `GuildMembers` intents.
2. On `guildMemberUpdate`, it checks member eligibility roles.
3. If a member is no longer qualified, configured colour/perk roles are removed.
4. A small Fastify health/info page is served on port `3443`.

## 2. Technical Documentation

Valerium is a TypeScript `discord.js` service with a lightweight `fastify` process for health visibility.

Local setup:

1. Install dependencies with `pnpm install`.
2. Build with `pnpm build`.
3. Start with `pnpm start`.
4. Lint source with `pnpm lint`.

Key source modules:

1. `src/modules/manageRoles.ts`: booster-role enforcement logic.
2. `src/config/roles.ts`: qualified roles and removable colour roles.
3. `src/server/serve.ts`: health/info endpoint on `/`.
4. `src/index.ts`: bot startup, event wiring, and server initialization.

Environment configuration is loaded via `dotenv` at runtime, including Discord token and webhook settings.

## 3. Legal Documentation

Project policy files reference the following documentation:

1. License: `https://docs.nhcarrigan.com/#/license`
2. Terms: `https://docs.nhcarrigan.com/#/terms`
3. Privacy: `https://docs.nhcarrigan.com/#/discord-boost-monitor/privacy`
4. Security: `https://docs.nhcarrigan.com/#/security`

Copyright is held by Naomi Carrigan.

## 4. Contributing Documentation

Contributions are accepted through pull requests under the repository contributing guidelines and code of conduct.

Before opening a pull request:

1. Run `pnpm install`.
2. Run `pnpm lint`.
3. Run `pnpm build`.
4. Verify bot behavior in a test Discord server.

Feedback and bug reports are handled via `https://support.nhcarrigan.com`.
