A collection of utilities and extended APIs to support the rapid and easy development of Bukkit plugins.
helper: The main helper project
helper-sql: Provides SQL datasources using HikariCP.
helper-redis: Provides Redis clients and implements the helper Messaging system using Jedis.
helper-mongo: Provides MongoDB datasources.
helper-lilypad: Implements the helper Messaging system using LilyPad.
helper-profiles: Provides a cached lookup service for player profiles.
Events- functional event handling and flexible listener registration
Scheduler- easy access to the Bukkit scheduler
Promise- a chain of operations (Futures) executing between both sync and async threads
Metadata- metadata with generic types, automatically expiring values and more
Messenger- message channel abstraction
Commands- create commands using the builder pattern
Scoreboard- asynchronous scoreboard using ProtocolLib
GUI- lightweight by highly adaptable and flexible menu abstraction
Menu Scheming- easily design menu layouts without having to worry about slot ids
Random- make random selections from collections of weighted elements
Bucket- sets of distributed and uniformly partitioned elements
Profiles- a lookup repository and cache for player uuid & name profiles
Plugin Annotations- automatically create plugin.yml files for your projects using annotations
Maven Annotations- download & install maven dependencies at runtime
Terminables- a family of interfaces to help easily manipulate objects which can be unregistered, stopped, or gracefully halted
Serialization- immutable and GSON compatible alternatives for common Bukkit objects
Bungee Messaging- wrapper for BungeeCord's plugin messaging API
... and much more!
Documentation and a more detailed feature overview can be found on the wiki, here: https://github.com/lucko/helper/wiki