diff --git a/docs/bot/.gitbook/assets/Advanced Settings Tab b/docs/bot/.gitbook/assets/Advanced Settings Tab new file mode 100644 index 0000000..f3aeb4a Binary files /dev/null and b/docs/bot/.gitbook/assets/Advanced Settings Tab differ diff --git a/docs/bot/.gitbook/assets/Authorize Discord Bot b/docs/bot/.gitbook/assets/Authorize Discord Bot new file mode 100644 index 0000000..6f9a0e8 Binary files /dev/null and b/docs/bot/.gitbook/assets/Authorize Discord Bot differ diff --git a/docs/bot/.gitbook/assets/Basic Bot Config Options b/docs/bot/.gitbook/assets/Basic Bot Config Options new file mode 100644 index 0000000..f3ee71e Binary files /dev/null and b/docs/bot/.gitbook/assets/Basic Bot Config Options differ diff --git a/docs/bot/.gitbook/assets/Bot Added Success Message b/docs/bot/.gitbook/assets/Bot Added Success Message new file mode 100644 index 0000000..0d9393e Binary files /dev/null and b/docs/bot/.gitbook/assets/Bot Added Success Message differ diff --git a/docs/bot/.gitbook/assets/Bot Home Page b/docs/bot/.gitbook/assets/Bot Home Page new file mode 100644 index 0000000..804366a Binary files /dev/null and b/docs/bot/.gitbook/assets/Bot Home Page differ diff --git a/docs/bot/.gitbook/assets/Bot Options b/docs/bot/.gitbook/assets/Bot Options new file mode 100644 index 0000000..0c76027 Binary files /dev/null and b/docs/bot/.gitbook/assets/Bot Options differ diff --git a/docs/bot/.gitbook/assets/Bot Options Complete b/docs/bot/.gitbook/assets/Bot Options Complete new file mode 100644 index 0000000..5747110 Binary files /dev/null and b/docs/bot/.gitbook/assets/Bot Options Complete differ diff --git a/docs/bot/.gitbook/assets/Bot Tab b/docs/bot/.gitbook/assets/Bot Tab new file mode 100644 index 0000000..d9cf229 Binary files /dev/null and b/docs/bot/.gitbook/assets/Bot Tab differ diff --git a/docs/bot/.gitbook/assets/Bot Tab (1) b/docs/bot/.gitbook/assets/Bot Tab (1) new file mode 100644 index 0000000..74ed6a5 Binary files /dev/null and b/docs/bot/.gitbook/assets/Bot Tab (1) differ diff --git a/docs/bot/.gitbook/assets/Bot Token b/docs/bot/.gitbook/assets/Bot Token new file mode 100644 index 0000000..25ea626 Binary files /dev/null and b/docs/bot/.gitbook/assets/Bot Token differ diff --git a/docs/bot/.gitbook/assets/Client ID Copy b/docs/bot/.gitbook/assets/Client ID Copy new file mode 100644 index 0000000..098f3be Binary files /dev/null and b/docs/bot/.gitbook/assets/Client ID Copy differ diff --git a/docs/bot/.gitbook/assets/Copy Channel ID b/docs/bot/.gitbook/assets/Copy Channel ID new file mode 100644 index 0000000..296be88 Binary files /dev/null and b/docs/bot/.gitbook/assets/Copy Channel ID differ diff --git a/docs/bot/.gitbook/assets/Copy Generated OAuth2 URL b/docs/bot/.gitbook/assets/Copy Generated OAuth2 URL new file mode 100644 index 0000000..5049b16 Binary files /dev/null and b/docs/bot/.gitbook/assets/Copy Generated OAuth2 URL differ diff --git a/docs/bot/.gitbook/assets/Copy Role ID b/docs/bot/.gitbook/assets/Copy Role ID new file mode 100644 index 0000000..a92d561 Binary files /dev/null and b/docs/bot/.gitbook/assets/Copy Role ID differ diff --git a/docs/bot/.gitbook/assets/Copy Server ID b/docs/bot/.gitbook/assets/Copy Server ID new file mode 100644 index 0000000..e38debb Binary files /dev/null and b/docs/bot/.gitbook/assets/Copy Server ID differ diff --git a/docs/bot/.gitbook/assets/Create Application Dialogue b/docs/bot/.gitbook/assets/Create Application Dialogue new file mode 100644 index 0000000..b107427 Binary files /dev/null and b/docs/bot/.gitbook/assets/Create Application Dialogue differ diff --git a/docs/bot/.gitbook/assets/Developer Mode Toggle b/docs/bot/.gitbook/assets/Developer Mode Toggle new file mode 100644 index 0000000..a758433 Binary files /dev/null and b/docs/bot/.gitbook/assets/Developer Mode Toggle differ diff --git a/docs/bot/.gitbook/assets/Discord Applications Page b/docs/bot/.gitbook/assets/Discord Applications Page new file mode 100644 index 0000000..bef5f3c Binary files /dev/null and b/docs/bot/.gitbook/assets/Discord Applications Page differ diff --git a/docs/bot/.gitbook/assets/Discord Applications Page Marked Up b/docs/bot/.gitbook/assets/Discord Applications Page Marked Up new file mode 100644 index 0000000..1e52cb3 Binary files /dev/null and b/docs/bot/.gitbook/assets/Discord Applications Page Marked Up differ diff --git a/docs/bot/.gitbook/assets/Installation Complete Options b/docs/bot/.gitbook/assets/Installation Complete Options new file mode 100644 index 0000000..ffb1c46 Binary files /dev/null and b/docs/bot/.gitbook/assets/Installation Complete Options differ diff --git a/docs/bot/.gitbook/assets/Installation Page b/docs/bot/.gitbook/assets/Installation Page new file mode 100644 index 0000000..b45ef5b Binary files /dev/null and b/docs/bot/.gitbook/assets/Installation Page differ diff --git a/docs/bot/.gitbook/assets/Installation Tab b/docs/bot/.gitbook/assets/Installation Tab new file mode 100644 index 0000000..b751d77 Binary files /dev/null and b/docs/bot/.gitbook/assets/Installation Tab differ diff --git a/docs/bot/.gitbook/assets/Invite Discord Bot Dialogue b/docs/bot/.gitbook/assets/Invite Discord Bot Dialogue new file mode 100644 index 0000000..6f9a0e8 Binary files /dev/null and b/docs/bot/.gitbook/assets/Invite Discord Bot Dialogue differ diff --git a/docs/bot/.gitbook/assets/OAuth2 Page b/docs/bot/.gitbook/assets/OAuth2 Page new file mode 100644 index 0000000..5225da4 Binary files /dev/null and b/docs/bot/.gitbook/assets/OAuth2 Page differ diff --git a/docs/bot/.gitbook/assets/OAuth2 Tab b/docs/bot/.gitbook/assets/OAuth2 Tab new file mode 100644 index 0000000..4aae717 Binary files /dev/null and b/docs/bot/.gitbook/assets/OAuth2 Tab differ diff --git a/docs/bot/.gitbook/assets/OAuth2 URL Generator b/docs/bot/.gitbook/assets/OAuth2 URL Generator new file mode 100644 index 0000000..5b62ca1 Binary files /dev/null and b/docs/bot/.gitbook/assets/OAuth2 URL Generator differ diff --git a/docs/bot/.gitbook/assets/OAuth2 URL Generator Configuration b/docs/bot/.gitbook/assets/OAuth2 URL Generator Configuration new file mode 100644 index 0000000..e59578f Binary files /dev/null and b/docs/bot/.gitbook/assets/OAuth2 URL Generator Configuration differ diff --git a/docs/bot/.gitbook/assets/Reset Bot Token Button b/docs/bot/.gitbook/assets/Reset Bot Token Button new file mode 100644 index 0000000..35a7271 Binary files /dev/null and b/docs/bot/.gitbook/assets/Reset Bot Token Button differ diff --git a/docs/bot/.gitbook/assets/Reset Bot Token Dialogue b/docs/bot/.gitbook/assets/Reset Bot Token Dialogue new file mode 100644 index 0000000..e3531ba Binary files /dev/null and b/docs/bot/.gitbook/assets/Reset Bot Token Dialogue differ diff --git a/docs/bot/.gitbook/assets/Server Settings b/docs/bot/.gitbook/assets/Server Settings new file mode 100644 index 0000000..98435c0 Binary files /dev/null and b/docs/bot/.gitbook/assets/Server Settings differ diff --git a/docs/bot/.gitbook/assets/Settings Icon b/docs/bot/.gitbook/assets/Settings Icon new file mode 100644 index 0000000..18c4efa Binary files /dev/null and b/docs/bot/.gitbook/assets/Settings Icon differ diff --git a/docs/bot/.gitbook/assets/image.png b/docs/bot/.gitbook/assets/image.png new file mode 100644 index 0000000..4c2c0ec Binary files /dev/null and b/docs/bot/.gitbook/assets/image.png differ diff --git a/docs/bot/README.md b/docs/bot/README.md new file mode 100644 index 0000000..bf9df2e --- /dev/null +++ b/docs/bot/README.md @@ -0,0 +1,30 @@ +--- +icon: house +layout: + title: + visible: true + description: + visible: false + tableOfContents: + visible: true + outline: + visible: true + pagination: + visible: true +--- + +# Home + +{% hint style="warning" %} +This documentation is still under construction. Expect rough edges and undocumented features +{% endhint %} + +{% hint style="info" %} +This documentation is meant for people who want to use Poixpixel's Discord Bot on their own Discord server +{% endhint %} + +Welcome to the Poixpixel Discord Bot's documentation! Here, you'll find information on getting started with the bot as well as documentation on all of its commands and features. + +### Jump right in + +
Getting StartedGet started by setting up the botBroken link
BasicsLearn the basics of the botBroken link
Contributing & DevelopmentInformation for developers and contributorsBroken link
diff --git a/docs/bot/SUMMARY.md b/docs/bot/SUMMARY.md new file mode 100644 index 0000000..4dd66db --- /dev/null +++ b/docs/bot/SUMMARY.md @@ -0,0 +1,20 @@ +# Table of contents + +* [Home](README.md) + +## Getting Started + +* [Quickstart](getting-started/quickstart/README.md) + * [Self-Hosting](getting-started/quickstart/self-hosting.md) + * [Using a Cloud Provider](getting-started/quickstart/using-a-cloud-provider.md) +* [Basic Configuration](getting-started/publish-your-docs.md) + +## Basics + +* [Configuration Options](basics/configuration-options.md) + +## Developers + +* [Introduction](developers/introduction.md) +* [Contribution Guidelines](developers/contribution-guidelines.md) +* [Licensing Information](developers/licensing-information.md) diff --git a/docs/bot/basics/configuration-options.md b/docs/bot/basics/configuration-options.md new file mode 100644 index 0000000..89788a7 --- /dev/null +++ b/docs/bot/basics/configuration-options.md @@ -0,0 +1,7 @@ +--- +description: Learn about all the configuration options and what they do +icon: list +--- + +# Configuration Options + diff --git a/docs/bot/developers/contribution-guidelines.md b/docs/bot/developers/contribution-guidelines.md new file mode 100644 index 0000000..90e34e7 --- /dev/null +++ b/docs/bot/developers/contribution-guidelines.md @@ -0,0 +1,6 @@ +--- +icon: clipboard-list +--- + +# Contribution Guidelines + diff --git a/docs/bot/developers/introduction.md b/docs/bot/developers/introduction.md new file mode 100644 index 0000000..37c78de --- /dev/null +++ b/docs/bot/developers/introduction.md @@ -0,0 +1,6 @@ +--- +icon: signs-post +--- + +# Introduction + diff --git a/docs/bot/developers/licensing-information.md b/docs/bot/developers/licensing-information.md new file mode 100644 index 0000000..601671f --- /dev/null +++ b/docs/bot/developers/licensing-information.md @@ -0,0 +1,17 @@ +--- +icon: scale-unbalanced +layout: + title: + visible: true + description: + visible: false + tableOfContents: + visible: true + outline: + visible: true + pagination: + visible: true +--- + +# Licensing Information + diff --git a/docs/bot/getting-started/publish-your-docs.md b/docs/bot/getting-started/publish-your-docs.md new file mode 100644 index 0000000..33b8409 --- /dev/null +++ b/docs/bot/getting-started/publish-your-docs.md @@ -0,0 +1,7 @@ +--- +description: Basic bot configuration options +icon: sliders +--- + +# Basic Configuration + diff --git a/docs/bot/getting-started/quickstart/README.md b/docs/bot/getting-started/quickstart/README.md new file mode 100644 index 0000000..32bff15 --- /dev/null +++ b/docs/bot/getting-started/quickstart/README.md @@ -0,0 +1,216 @@ +--- +description: Get started with the Discord bot +icon: bullseye-arrow +--- + +# Quickstart + +## Requirements + +* **A Database & Cache**: Use **Valkey** or **Redis** for caching. The main database must be **PostgreSQL**. +* **Server**: A server or computer to host the bot, preferably running Linux. +* **Skills**: Basic knowledge of the command line and managing servers. +* **Permissions**: The **Manage Server** permission in the Discord server where you want to add the bot. +* **Discord Developer Dashboard** access. +* A Discord account (obviously). + +## Step 0: Chose Your Hosting Method + +You can either choose to host everything yourself, or you can use a cloud provider to hose everything for you. + +{% hint style="info" %} +We recommend hosting everything in the cloud since it's easier for beginners. However, if you have a spare computer or server and the knowledge to host it yourself, we suggest you do that since its cheaper than paying a cloud provider to host it all for you. +{% endhint %} + +## Step 1: Basic Setup and Preparation + +After deciding on how you want to host the bot and its resources, move onto the basic setup and preparation outlined below. + +{% stepper %} +{% step %} +### Navigate to the Discord Developer Dashboard + +[Click this link](https://discord.com/developers/applications) and sign into your discord account. Once you sign in, you should see a page like this: + +
Applications page of the Discord Developer Dashboard

Discord Developer Dashboard Applications Page

+ +This is what's known as your applications page. This is where you'll see and manage all of your Discord bots and applications. +{% endstep %} + +{% step %} +### Create a new application + +Click the button that says, "New Application". + +
Red arrow pointing to button on left navigation pane that says "New Application"

Create a New Application

+ +After clicking the button, give you Discord Bot a name, click the check box, and then click "Create". + +
Create application dialogue

Create Application Dialogue

+ +Once you click the "Create" button and complete the CAPTCHA, you should see a page like this: + +
Discord application overview page

Discord Application Overview Page

+ +This is the overview page for your Discord bot. Here, you can configure the app icon, the app name, and app description. +{% endstep %} + +{% step %} +### Invite the bot to your server + +In the left navigation pane, click the button that says, "OAuth2". + +
Red arrow pointing to button on left navigation pane that says "OAuth2"

OAuth2 Button

+ +Once you click the button, you should see a page that looks like this: + +
OAuth2 Page

OAuth2 Page

+ +Underneath the section that says, "Client Information" where it says "Client ID", click on the "Copy" button. Save this number as we'll need it for later. + +
Arrow pointing to "Copy" button under Client ID section

Client ID

+ +Next, scroll down to this section: + +
OAuth2 URL Generator

OAuth2 URL Generator

+ +Check the checkbox next to where it says, "bot". Scroll down. Under the "Bot Permissions" section, click the checkbox for "Administrator" under the "General Permissions" section. Next, scroll down again and for the "Intergration Type" dropdown, make sure it says, "Guild Install". In the end, your configuration should look something like this: + +
OAuth2 URL Generator Configuration Options

OAuth2 URL Generator Configuration

+ +Click "Copy" next to "Generated URL".\ + + +
Copy generated URL

Copy Generated URL

+ +Open a new browser tab, pase in the link, and press Enter. You should then see a screen where you can invite the bot into a Discord server. Select your Discord server from the dropdown menu and click "continue". + +{% hint style="info" %} +If you don't see the server you want to add the bot to, it's probably because you don't have the **Manage Server** permission in that Discord server +{% endhint %} + +
Invite discord bot to server dialogue

Invite Discord Bot Dialogue

+ +On the next screen, click "Authorize" and if prompted, complete multifactor authentication and the CAPTCHA. + +
Authorize Discord Bot

Authorize Discord Bot

+ +If everything was successful, you should see a success message like the one below. + +
Discord bot added successfully message

Success Message

+ +The discord bot was successfully added to your selected Discord server. You can now continue with the rest of the guide. +{% endstep %} + +{% step %} +### Configure installation settings + +Click the button on the left navigation pane that says, "Installation". + +
Red arrow pointing to button on left navigation pane that says "Installation"

Installation Button

+ +After you click on the button, you'll be greeted by a page that look something like this: + +
Installation page

Installation Page

+ +First, uncheck the checkbox next to "User Install". Next, select "None" from the "Install Link" dropdown (click where it says "Discord Provided Link"). Finally, click "Save" at the bottom of the screen. When you're done, your screen should look like this: + +
Updated installation options

Updated Installation Options

+ +Now, it's time to configure the actual Discord bot. +{% endstep %} + +{% step %} +### Configure and get your bot's information + +Click the button on the left navigation pane that says, "Bot". + +
Red arrow pointing to button on left navigation pane that says "Bot"
+ +After clicking on the "Bot" tab, you'll see a page like this: + +
Discord application bot tab

Discord Application Bot Tab

+ +Here, you can configure things such as the username, banner, and icon of your bot. Scroll down to the section that looks like this: + +
Discord bot options

Bot Options

+ +Deselect the "Public Bot" option and choose all other options. Make sure to click "Save". Your screen should resemble this: + +
Updated bot options

Updated Bot Options

+ +{% hint style="info" %} +**Explanation for Selected Options:** + +* Unselecting "Public Bot" restricts adding the bot to a server specifically to you, which is our intention. +* Enabling "Requires OAuth2 Code Grant" ensures the bot receives all its permissions before entering your server. +* By selecting all options under "Privileged Gateway Intents," the bot can view member presence statuses, manage members, and access message content. +{% endhint %} + +Next, scroll back up to this section: + +
Bot details and token configuration options

Basic Bot Configuration and Token Options

+ +Underneath the "Token" header, click on the button that says, "Reset Token". + +
Reset bot token button

Reset Token Button

+ +Click "Yes, do it!" on the dialogue that pops up. + +
Reset bot token confirmation dialogue

Reset Bot Token Dialogue

+ +Follow the multifactor authentication steps, and once complete, you should see a screen like this: + +{% hint style="danger" %} +**WARNING: DO NOT SHARE YOUR BOT TOKEN WITH ANYONE. Treat your bot token like a password. If someone gets access to your bot's token, they'll have unrestricted access to your bot and Discord server, meaning they can do anything that they want. Store this token in a safe place as you won't get to see it again and will have to regenerate it.** +{% endhint %} + +
Discord bot token

Discord Bot Token

+ +Copy your bot token and save it somewhere safe. We'll need it later. +{% endstep %} + +{% step %} +### Gather other information + +If you've made it this far without getting lost, give yourself a pat on the back. Before we move onto the fun stuff, we have to gather one some last bits of information from our Discord server. + +Head on over to [Discord](https://discord.com/app) and click on the settings icon next to your username. + +
Red arrow pointing to settings button

Settings Icon

+ +Next, scroll down on the left navigation pane and click "Advanced". + +
Red arrow pointing to button on left navigation pane that says "Advanced"

Advanced Settings Button

+ +Find the option that says, "Developer Mode" and turn that on. Once you are done, your screen should look like this: + +
Developer mode toggle on

Developer Mode Toggle Turned On

+ +Exit settings and navigate to your Discord server. On the left server selector pane, right click on your Discord server and click the "Copy Server ID" button on the bottom of the options menu. This is what's known as your "Guild ID". Save this ID as we'll need it later. + +
Red arrow pointing to button that says "Copy Server ID"

Copy Server ID Button

+ +Next, in your Discord server, right click on your logs channel and click the "Copy Channel ID" button. Repeat this for your welcome channel. + +
Red arrow pointing to button that says "Copy Channel ID"

Copy Channel ID Button

+ +Lastly, click on your server's name at the top and click on "Server Settings". + +
Server settings button

Server Settings Button

+ +Then, click on the "Roles" button in the left navigation pane and find the role(s) that you want to assign to people as soon as they join your server. Right click on each role and select "Copy Role ID". Save these ID's as we'll need them later when configuring the bot. + +
Copy role ID for join roles

Copy Join Role ID

+ +We are now done with the preparation for our Discord bot. It's now time to setup and deploy the Discord bot and its services. Based on your decision in Step 0, click on the corresponding link to take you to the rest of the quick start guide. +{% endstep %} +{% endstepper %} + +{% content-ref url="self-hosting.md" %} +[self-hosting.md](self-hosting.md) +{% endcontent-ref %} + +{% content-ref url="using-a-cloud-provider.md" %} +[using-a-cloud-provider.md](using-a-cloud-provider.md) +{% endcontent-ref %} diff --git a/docs/bot/getting-started/quickstart/self-hosting.md b/docs/bot/getting-started/quickstart/self-hosting.md new file mode 100644 index 0000000..fbec60f --- /dev/null +++ b/docs/bot/getting-started/quickstart/self-hosting.md @@ -0,0 +1,6 @@ +--- +icon: server +--- + +# Self-Hosting + diff --git a/docs/bot/getting-started/quickstart/using-a-cloud-provider.md b/docs/bot/getting-started/quickstart/using-a-cloud-provider.md new file mode 100644 index 0000000..0e55e68 --- /dev/null +++ b/docs/bot/getting-started/quickstart/using-a-cloud-provider.md @@ -0,0 +1,6 @@ +--- +icon: cloud +--- + +# Using a Cloud Provider +