# Starboard (Message Highlights)
The Starboard feature highlights notable messages in a dedicated channel when they receive a configured reaction (commonly a star emoji). DragonBot provides a persistent, guild-scoped starboard configuration and automatically posts, updates, and removes starboard messages as reactions change.
## Features
- Persistent per-guild configuration (destination channel, trigger emoji, threshold).
- Ignore lists for channels, roles, and users.
- Tracks created starboard posts so updates and deletes are idempotent.
- Commands to configure starboard without requiring database access.
## Commands
Use `/starboard` to configure the starboard for your guild. Subcommands:
- `set-channel <channel>` — Set the destination channel where starboard posts are sent.
- `set-threshold <count>` — Minimum number of reactions required to post to starboard (default: 3).
- `set-emoji <emoji>` — Emoji that triggers starboard (unicode or custom `name:id`).
- `ignore-channel <channel>` — Toggle ignoring a channel from starboard processing.
Example: set the starboard channel
```text
/starboard set-channel #starboard
Example: change threshold to 5
/starboard set-threshold 5
messageReactionAdd — When a reaction matching the configured emoji reaches the configured threshold, DragonBot will create a starboard post in the configured channel (if not already posted). If a post exists, the bot updates the embed to reflect the current count.messageReactionRemove — When the reaction count falls below the threshold, the bot removes the starboard post and clears the mapping. If the count remains above the threshold, the embed is updated with the new count.The bot stores a mapping of original message ID ↔ starboard message ID in the database so updates and deletes are deterministic.
Send Messages, Embed Links, and Manage Messages (for deleting its starboard posts) in the configured starboard channel.src/Database/Schemas/starboardDB.tssrc/Commands/Utilities/starboard.tssrc/Events/Logs/messageReactionAdd.ts, src/Events/Logs/messageReactionRemove.ts```