Skip to content
Alberto Migliorato edited this page Jun 28, 2026 · 5 revisions

PowerLib

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.


Features

✉️ 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.

Supported platforms

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.


Requirements

  • A server/proxy running Java 17 or higher.
  • For Bukkit, Minecraft 1.20.4+ (the library is Adventure-based; the powerlib-components module additionally needs 1.20.5+ at runtime).

Support

Before asking, please check the Wiki and the FAQ — most questions are answered here.

Credits

The structure of this wiki is inspired by Luck's excellent LuckPerms wiki — a high bar for plugin documentation. ☘️

Clone this wiki locally