Skip to content

DaisyCore

One Mega Paper Library

The premium Kotlin-first toolkit for Paper plugins that want one dependency, one platform owner, and zero library sprawl.

DaisyCore brings commands, menus, sidebars, tablists, placeholders, items, and runtime ownership together so your plugin stack feels coherent instead of stitched together.

dependencies {
implementation("cat.daisy:DaisyCore:1.0.0")
}
One dependencyInstall DaisyCore once and bootstrap only the systems your plugin needs.
Auto-loaded commandsProviders are discovered at startup through DaisyPlatform.
Shared runtimeMenus, sidebars, tablists, and placeholders follow one lifecycle model.
Paper + Kotlin firstModern APIs without exposing the internal module sprawl.

Commands

Auto-loaded providers, Kotlin DSL builders, and one command bootstrap path through DaisyPlatform.

Menus

Immutable menu definitions with session-based runtime handling, inventory safety, and refresh support.

Scoreboards

Sidebar-first sessions with keyed lines, invalidate-by-key updates, and clean platform ownership.

Tablists

Header and footer rendering with per-player sessions and a simple baseline API that stays honest.

Placeholders

A shared placeholder registry so menus, sidebars, tablists, and messages can resolve viewer-aware values consistently.

Items

Reusable item builders that keep Adventure text and inventory rendering code cleaner across the platform.

One dependency, shared foundations, cleaner plugin code

DaisyCore is designed so normal plugin projects depend on one thing. Internally, the repo stays modular. Publicly, your plugin code gets one bootstrap path, one text model, one placeholder system, and one family of Daisy-branded types.

Current command discovery: DaisyCore currently scans your plugin jar for @DaisyCommandSet providers at startup.

Scoreboards and tablists: both are production baseline systems. They are meant to be usable now, while leaving room for deeper transports later.