A curated collection of tools for developers working on Discord bots
- gateway-proxy - Drop-in proxy for Discord gateway connections and sessions allowing for zero downtime deploys
- rateway (maybe dead) - A stateful gateway for Discord Bots. Scaling well, it processes messages from the Discord gateway and puts them in AMQP exchanges
- Concord - A Discord API wrapper library made in C
- Orca - C Multi-REST API library for Discord, Slack, Reddit, etc.
- Discord.Net An unofficial .Net wrapper for the Discord API
- DSharpPlus - A .NET Standard library for making bots using the Discord API.
- D++ - D++ is Lightweight and scalable for small and huge bots!
- discordcr - Minimalist Discord library for Crystal
- nyxx - Wrapper around Discord API for Dart
- Nostrum - An Elixir library for the Discord API.
- arikawa - A Golang library and framework for the Discord API
- corde - A high level discord interactions wrapper, simple, idiomatic, testable and extensible.
- discordgo - Go bindings for Discord
- disgo - A modular Golang Discord API Wrapper
- disgord - Go module for interacting with the documented Discord's bot interface
-
detritusjs (dead) - A wheels-attached, pure-TypeScript library for the Discord API.
-
discord.js - The most popular discord bot framework
- discord-cross-hosting - Scale discord.js horizontally
- discord-hybrid-sharding - Allows clustering with discord.js sharding
- discord.js-light - All the power of discord.js, zero caching
- Kurasuta - Discord.js sharder with clustering support
-
Discordeno - Discord API library for Deno
-
Eris - A lightweight and flexible library
- eris-fleet - Cluster management for Discord bots using the Eris library
- eris-sharder (dead) - Sharding manager for the discord Eris library
- megane - A framework for large multi-process Discord bots
- redis-sharder - Scalable and robust sharding solution for the Eris discord library.
-
Harmony - An easy to use Discord API Library for Deno.
-
Paracord (dead) - NodeJS Discord API framework built to scale
-
slash-create - Creator and handler for Discord's slash commands
-
Weather Stack - Ecosystem of tools for microservice Discord bots
Languages like Java, Scala, and Kotlin
- Discord4j - Discord4J is a fast, powerful, unopinionated, reactive library to enable quick and easy development
- Javacord - An easy to use multithreaded library for creating Discord bots in Java.
- Kord - Idiomatic Kotlin Wrapper for The Discord API
- Discordia - Discord API library written in Lua for the Luvit runtime environment
Libraries designed for multiple languages
- Spectacles - A distributed Discord API wrapper
- DiscordPHP - An API to interact with the popular messaging app Discord
- discord.py - An API wrapper for Discord written in Python.
- jishaku - A debugging and testing cog for discord.py rewrite bots.
- hikari - A Discord API wrapper for Python and asyncio built on good intentions.
- interactions.py - A highly extensible, easy to use, and feature complete bot framework for Discord
- Nextcord - A Python wrapper for the Discord API forked from discord.py
- discordrb - Discord API for Ruby
- serenity - A Rust library for the Discord API
- Songbird - Songbird is an async, cross-library compatible voice system for Discord, written in Rust.
- Twilight - twilight is a powerful asynchronous, flexible, and scalable ecosystem of Rust libraries for the Discord API
Items that doesn't fit into the other categories
- BotBlock.org - The single source for all Discord bot lists. Simplify sending your bot's guild count with the BotBlock API.
- discohook - Easily preview embeds
- gateway-queue - Ratelimited gateway queue for multiserviced bots.
- http-proxy - A ratelimited HTTP proxy in front of the Discord API
Papers/articles about effective bot design
- 112RG's Microservice - 112RG experiance in building microservice bots
- Best practices for Discord bots (The original guide)
- DasWolke's Microservice Bots - From the creator of the WeatherStack
- FireController's Best practices for Discord bots - A more updated version of meew0's best practices
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