# Discord4J/Discord4J

Discord4J is a fast, powerful, unopinionated, reactive library to enable quick and easy development of Discord bots for Java, Kotlin, and other JVM languages using the official Discord Bot API.

Repository: https://github.com/Discord4J/Discord4J
Canonical: https://ross.abutalabs.com/products/discord4j
Homepage: https://discord4j.com
Language: Java
License: LGPL-3.0
License Family: copyleft
Topics: discord, bot, rest-api, rest, websocket, javadoc, bot-api, discord4j, d4j, java, api, discord-api, discord-bot, reactor, discord-bot-api, hacktoberfest
Last push: 2026-08-24T12:33:24+00:00

## Health v2 (maintenance only)
Score: 90/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 74, longevity 100
- inputs: {"age_days": 3952, "days_push": 9, "days_rel": 14, "gap_med": 119, "n_releases_24m": 8}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1920, forks 269 (observed 2026-08-28T04:05:55.123097+00:00)

## What it is
Discord4J is a fast, reactive JVM library for building Discord bots using the official Discord Bot API, built on Reactor and Netty. It provides a modular, non-blocking REST and WebSocket wrapper with automatic rate limiting and reconnection strategies.

## Use cases
- build a discord bot in java
- create a discord bot with kotlin
- respond to discord messages with a bot
- handle discord slash commands
- connect to discord gateway websocket events
- make discord rest api calls with rate limiting
- develop a reactive discord bot on the jvm

## When to choose
- you are building a Discord bot in Java, Kotlin, or another JVM language
- you want a reactive, non-blocking API with automatic rate limiting and reconnection
- you need fine-grained, modular control over which Discord API components you use
- you want a mature, well-documented wrapper with active releases

## When to avoid
- you are writing bots in Python, JavaScript, or other non-JVM languages
- you prefer a simple blocking API without reactive programming concepts
- you need a full bot framework with command handlers and plugins rather than a low-level API wrapper
- you want a turnkey hosted bot solution

## Facets
- artifact type: library
- maturity: active
- function: websocket, http-client, api-framework, sdk
- domain: messaging-platforms, developer-tools, chatbots
- platform: jvm, cross-platform
- tags: discord-api-wrapper, discord-bots, reactive, reactor, netty, bot-development, automation

## Member repositories
- Discord4J/Discord4J (main) score 90

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:55.123097+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:09:47.828080+00:00, confidence not recorded.
  - readme: https://github.com/Discord4J/Discord4J (fetched 2026-08-28T04:05:55.123097+00:00, sha 8fa77af9bea4)
  - homepage: https://discord4j.com (fetched 2026-08-29T10:49:07.770336+00:00, sha c338eeb783ee)
  - site_page: https://docs.discord4j.com (fetched 2026-08-29T10:49:07.779215+00:00, sha f2b75c03411b)
- Data as of 2026-08-30T08:39:29.467469+00:00.
