-
Notifications
You must be signed in to change notification settings - Fork 1
Home
PowerLib is a cross-platform development library for Minecraft plugins. It gives you one API for Bukkit/Spigot/Paper, BungeeCord and Velocity, so the same code for messages, scheduling, configuration, cross-server messaging and commands runs unchanged on every platform.
It is built on top of Adventure, targets Java 17, and is designed to be either shaded into your plugin or run as a standalone dependency.
New here? Start with Getting Started to add PowerLib to your project, then jump into any module below.
| ✉️ Messages | One Adventure-based message API. Legacy &, hex &#rrggbb and MiniMessage render identically on Bukkit, Bungee and Velocity. Component-aware placeholders. |
| ⏱️ Scheduler | A unified, Folia-aware scheduler. run, runLater, runTimer, async variants and CompletableFuture helpers — same API on servers and proxies. |
| 🔗 Cross-Server Messaging | A typed pub/sub facade over plugin messages. Send DTOs proxy↔backend without hand-rolling byte streams. |
| ⚙️ Configuration | YAML/JSON config with automatic backfill — plugin updates add new default keys to existing user files instead of silently breaking them. |
| 🎁 Items | A fluent ItemBuilder with names, lore, enchants, skulls, persistent data (PDC), custom build steps, and Nexo/ItemsAdder integration. |
| 📦 Inventories |
InventoryBuilder for menus, PagedInventoryBuilder for pagination, and the ComponentBuilder add-on for 1.20.5+ DataComponents. |
| ⌨️ Commands | A cross-platform command framework: define once, register on Bukkit, Bungee or Velocity. |
| 🧰 Utilities | Weighted random draws, pairs, JSON helpers, version-safe reflection and update checks. |
| Platform | Versions | Artifact |
|---|---|---|
| Bukkit / Spigot / Paper | 1.20.4+ (Adventure-backed) | powerlib-bukkit |
| BungeeCord | latest | powerlib-bungee |
| Velocity | 3.x | powerlib-velocity |
Optional add-on modules: powerlib-minimessage, powerlib-components, powerlib-commands-api + powerlib-commands-<platform>. See Getting Started.
- A server/proxy running Java 17 or higher.
- For Bukkit, Minecraft 1.20.4+ (the library is Adventure-based; the
powerlib-componentsmodule additionally needs 1.20.5+ at runtime).
Before asking, please check the Wiki and the FAQ — most questions are answered here.
- 💬 Discord: https://discord.gg/UMhsCZk
- 🐛 Bug reports: GitHub Issues — please confirm the issue is actually PowerLib-related first.
The structure of this wiki is inspired by Luck's excellent LuckPerms wiki — a high bar for plugin documentation. ☘️
Core (all platforms)
Bukkit / Paper
Commands