An open API service indexing awesome lists of open source software.

https://github.com/shitcorp/awesome-discord-bot-tools

A curated collection of tools for developers working on Discord bots
https://github.com/shitcorp/awesome-discord-bot-tools

List: awesome-discord-bot-tools

awsome awsome-list bot discord discord-api discord-bot resources

Last synced: 4 months ago
JSON representation

A curated collection of tools for developers working on Discord bots

Awesome Lists containing this project

README

        

# Awesome Discord Bot Tools

> A curated collection of tools for developers working on Discord bots

## Table of Contents

- [Alternate Gateways](#alternate-gateways)
- [Libraries](#libraries)

- [C](#c)
- [C#](#c-1)
- [C++](#c-2)
- [Crystal](#crystal)
- [Dart](#dart)
- [Elixir](#elixir)
- [Go](#go)
- [JavaScript](#javascript)
- [Lua](#lua)
- [Multi Lang](#multi-lang)
- [PHP](#php)
- [Python](#python)
- [Ruby](#ruby)
- [Rust](#rust)

- [MISC](#misc)
- [Papers](#papers)

---

## Alternate Gateways

- [gateway-proxy](https://github.com/Gelbpunkt/gateway-proxy) - Drop-in proxy for Discord gateway connections and sessions allowing for zero downtime deploys
- [nirn-proxy](https://github.com/germanoeich/nirn-proxy) - Distributed transparent REST proxy for the Discord API, handles ratelimits for you, multi-bot support, dynamic, version agnostic
- [rateway](https://github.com/IdleRPGBot/rateway) (maybe dead) - A stateful gateway for Discord Bots. Scaling well, it processes messages from the Discord gateway and puts them in AMQP exchanges

---

## Libraries

### C

- [Concord](https://github.com/Cogmasters/concord) - A Discord API wrapper library made in C
- [Orca](https://github.com/cee-studio/orca) - C Multi-REST API library for Discord, Slack, Reddit, etc.

### C#

- [Discord.Net](https://github.com/discord-net/Discord.Net) An unofficial .Net wrapper for the Discord API
- [DSharpPlus](https://github.com/DSharpPlus/DSharpPlus) - A .NET Standard library for making bots using the Discord API.

### C++

- [D++](https://github.com/brainboxdotcc/DPP) - D++ is Lightweight and scalable for small and huge bots!

### Crystal

- [discordcr](https://github.com/shardlab/discordcr) - Minimalist Discord library for Crystal

### Dart

- [nyxx](https://github.com/nyxx-discord/nyxx) - Wrapper around Discord API for Dart

### Elixir

- [Nostrum](https://github.com/Kraigie/nostrum) - An Elixir library for the Discord API.

### Go

- [arikawa](https://github.com/diamondburned/arikawa) - A Golang library and framework for the Discord API
- [corde](https://github.com/Karitham/corde) - A high level discord interactions wrapper, simple, idiomatic, testable and extensible.
- [discordgo](https://github.com/bwmarrin/discordgo) - Go bindings for Discord
- [dgrs](https://github.com/zekroTJA/dgrs) - A (WIP) DiscordGo state manager using Redis
- [ken](https://github.com/zekroTJA/ken/) - A cutting edge (haha), object-oriented and highly modular application command handler for Discordgo
- [Shards](https://github.com/servusdei2018/shards) - Configurable, scalable and automatic sharding library for discordgo.
- [disgo](https://github.com/disgoorg/disgo) - A modular Golang Discord API Wrapper
- [disgord](https://github.com/andersfylling/disgord) - Go module for interacting with the documented Discord's bot interface

### JavaScript

- [detritusjs](https://github.com/detritusjs) (dead) - A wheels-attached, pure-TypeScript library for the Discord API.

- [discord.js](https://discord.js.org/#/) - The most popular discord bot framework

- [discord-cross-hosting](https://github.com/meister03/discord-cross-hosting) - Scale discord.js horizontally
- [discord-hybrid-sharding](https://github.com/meister03/discord-hybrid-sharding) - Allows clustering with discord.js sharding
- [discord.js-light](https://github.com/timotejroiko/discord.js-light) - All the power of discord.js, zero caching
- [Kurasuta](https://github.com/DevYukine/Kurasuta) - Discord.js sharder with clustering support

- [Discordeno](https://github.com/discordeno/discordeno) - Discord API library for Deno
- [Eris](https://abal.moe/Eris/) - A lightweight and flexible library
- [eris-fleet](https://github.com/danclay/eris-fleet/) - Cluster management for Discord bots using the Eris library
- [eris-sharder](https://github.com/discordware/eris-sharder) (dead) - Sharding manager for the discord Eris library
- [megane](https://github.com/brussell98/megane) - A framework for large multi-process Discord bots
- [redis-sharder](https://github.com/privy-gg/redis-sharder) - Scalable and robust sharding solution for the Eris discord library.
- [Harmony](https://github.com/harmonyland/harmony) - An easy to use Discord API Library for Deno.
- [Paracord](https://github.com/paracordjs/paracord) (dead) - NodeJS Discord API framework built to scale
- [slash-create](https://github.com/Snazzah/slash-create) - Creator and handler for Discord's slash commands
- [Weather Stack](https://github.com/DasWolke/CloudStorm) - Ecosystem of tools for microservice Discord bots

### JVM

> Languages like Java, Scala, and Kotlin

- [Discord4j](https://github.com/Discord4J/Discord4J) - Discord4J is a fast, powerful, unopinionated, reactive library to enable quick and easy development
- [Javacord](https://github.com/Javacord/Javacord) - An easy to use multithreaded library for creating Discord bots in Java.
- [Kord](https://github.com/kordlib/kord) - Idiomatic Kotlin Wrapper for The Discord API

### Lua

- [Discordia](https://github.com/SinisterRectus/Discordia) - Discord API library written in Lua for the Luvit runtime environment

### Multi Lang

> Libraries designed for multiple languages

- [Spectacles](https://github.com/spec-tacles) - A distributed Discord API wrapper

### PHP

- [DiscordPHP](https://github.com/discord-php/DiscordPHP) - An API to interact with the popular messaging app Discord

### Python

- [discord.py](https://discordpy.readthedocs.io/en/stable/) - An API wrapper for Discord written in Python.
- [jishaku](https://github.com/Gorialis/jishaku) - A debugging and testing cog for discord.py rewrite bots.
- [hikari](https://github.com/hikari-py/hikari) - A Discord API wrapper for Python and asyncio built on good intentions.
- [interactions.py](https://github.com/interactions-py/interactions.py) - A highly extensible, easy to use, and feature complete bot framework for Discord
- [Nextcord](https://github.com/nextcord/nextcord) - A Python wrapper for the Discord API forked from discord.py

### Ruby

- [discordrb](https://github.com/shardlab/discordrb) - Discord API for Ruby

### Rust

- [serenity](https://github.com/serenity-rs/serenity) - A Rust library for the Discord API
- [Songbird](https://github.com/serenity-rs/songbird) - Songbird is an async, cross-library compatible voice system for Discord, written in Rust.
- [Twilight](https://twilight.rs/) - **twilight** is a powerful asynchronous, flexible, and scalable ecosystem of Rust libraries for the Discord API

## MISC

> Items that doesn't fit into the other categories

- [BotBlock.org](https://botblock.org/) - The single source for all Discord bot lists. Simplify sending your bot's guild count with the BotBlock API.
- [discohook](https://discohook.org/) - Easily preview embeds
- [gateway-queue](https://github.com/twilight-rs/gateway-queue) - Ratelimited gateway queue for multiserviced bots.
- [http-proxy](https://github.com/twilight-rs/http-proxy) - A ratelimited HTTP proxy in front of the Discord API

## Papers

> Papers/articles about effective bot design

- [112RG's Microservice](https://gist.github.com/112RG/ef3c645e712c797144a67cca6bd76c1b) - 112RG experiance in building microservice bots
- [Best practices for Discord bots](https://github.com/meew0/discord-bot-best-practices) (The original guide)
- [DasWolke's Microservice Bots](https://gist.github.com/DasWolke/c9d7dfe6a78445011162a12abd32091d) - From the creator of the WeatherStack
- [FireController's Best practices for Discord bots](https://github.com/FireController1847/discord-bot-best-practices) - A more updated version of meew0's best practices

---

## Contributing

Please try to keep your additon in line with the general formating of this document. Some basic guidlines are:

- List in alphanumeric order
- Provide a meanful description (ie. what sets it apart)
- Provide a link to the project