Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/resynceddesign/giveawaybot/llms.txt

Use this file to discover all available pages before exploring further.

GiveawayBot is a self-hosted Discord bot that lets you run timed giveaways directly in your server. Hosts create a giveaway with a duration and prize, members enter by clicking a button, and the bot selects a winner automatically when time runs out. All giveaway state is stored locally in a SQLite database, so nothing leaves your infrastructure.

Features

Timed giveaways

Set a duration using a simple format like 5m, 2h, or 1d. The bot ends the giveaway automatically when time expires.

Button-based entry

Members enter by clicking an interactive button on the giveaway message — no commands or reactions needed.

Per-guild settings

Configure behavior on a per-server basis, keeping settings isolated between guilds.

SQLite persistence

All giveaway data is stored in a local SQLite database using better-sqlite3, with no external database required.

Winner rerolling

Reroll a winner after a giveaway ends if the original winner is ineligible or unresponsive.

Auto DM notifications

Winners receive a direct message automatically when the giveaway ends.

Requirements

You need Node.js 18 or later and a Discord application with a bot token to run GiveawayBot. The bot must have the Guilds, Message Content, Guild Messages, and Guild Members gateway intents enabled on the Discord Developer Portal.

Get started

Follow the quickstart guide to clone the repo, configure credentials, and invite the bot to your server.

Build docs developers (and LLMs) love