weftkit¶
Lifecycle management for Bukkit plugins, wired at compile time.
Pre-release
weftkit is pre-1.0, so the public API can still change between releases until 1.0.
weftkit runs your plugin's lifecycle. It brings your components up in dependency order, runs their startup and shutdown hooks, registers your Bukkit listeners, and tears everything down in reverse when the plugin disables. If a component's startup fails, weftkit aborts cleanly and disables the plugin instead of leaving it half loaded.
The wiring that makes this possible is resolved at compile time. A small annotation processor
validates the whole dependency graph during javac, so a missing dependency, a cycle, or a
misused annotation fails the build instead of crashing on startup, and the generated registry
means the hot path does zero reflection.
Why weftkit¶
A weft is the horizontal thread passed back and forth through the vertical warp threads in weaving, binding the loose strands into a single fabric. That is what weftkit does. It threads through your independent components and binds them into one plugin with a single, managed lifecycle.
Highlights¶
- Managed lifecycle. Components load in dependency order, run startup and teardown hooks, and shut down in reverse.
- Bukkit integration.
onEnable,onDisable, listener registration, and clean shutdown are handled for you. - Compile-time safety. The graph is validated during
javac, so wiring mistakes are build errors, not startup crashes. - Zero runtime reflection. Components are built by generated factories.