Ledger is a modular Discord bot focused on practical server utilities and lightweight interaction. It is built with Python using the discord.py library and relies exclusively on modern slash commands for clarity and ease of use.
The bot uses a persistent SQLite database to store server-specific configuration and content, such as saved quotes and timezone preferences. Its modular architecture allows new functionality to be added cleanly without impacting existing features.
| Command | Description | Output |
|---|---|---|
/quote_add [quote] |
Saves a new quote to the server database. | Quote saved confirmation |
/quote_random |
Returns a random quote stored for the server. | Random quote text |
/quote_list |
Displays the most recently added quotes. | Numbered list of quotes |
/quote_search [text] |
Searches quotes containing specific keywords. | Filtered quote list |
| Command | Description | Output |
|---|---|---|
/timezone_set [timezone] |
Sets the server's primary timezone. Supports autocomplete and common abbreviations (e.g. CET, UTC). | Confirmation message |
/timezone |
Displays the current server time along with a curated list of important global timezones. | Formatted multi-timezone overview |
| Command | Description |
|---|---|
/ping |
Checks the bot's current latency. |
/uptime |
Displays how long the bot has been running. |
/serverinfo |
Shows basic information about the current server. |
/userinfo [user] |
Displays account and server information about a user. |
/roll [NdM] |
Rolls dice using NdM notation (e.g. 2d6, 1d20). |
/coinflip |
Flips a virtual coin. |
/choose [options] |
Lets the bot choose randomly from multiple options. |
/rate [thing] |
Rates something or someone on a scale from 1 to 10. |
/8ball [question] |
Returns a randomized Magic 8-Ball response. |