Animated titles, actionbars, tab lists, scoreboards, gradients, and placeholders for Bukkit, Spigot, and Paper servers.
TitleManager is the presentation layer for Minecraft servers that care about polish. Welcome players with animated titles, keep the tab list alive with gradients and placeholders, publish announcements without command-block gymnastics, and show a clean sidebar that updates without spamming duplicate packets.
The 3.x line is a modern rebuild of the classic TitleManager plugin: a safer configuration model, a shared animation engine for the plugin and web previews, explicit runtime support, generated API docs, and CI/CD-ready releases.
- First impressions that move: configurable join titles, subtitles, actionbars, timings, and first-join variants.
- A richer TAB screen: animated player-list headers and footers with online counts, world time, server time, gradients, and custom animation files.
- Clean sidebars: up to 15 animated scoreboard lines backed by Bukkit scoreboard output.
- Broadcasts and announcements: send titles or actionbars on demand, or schedule rotating announcements from config.
- Placeholder-friendly: use TitleManager placeholders, PlaceholderAPI, Vault values, and BungeeCord-aware data when those integrations are installed.
- Safe reloads:
/tm reloadis transactional; if the new config is broken, the previous running config stays active. - Diagnostics when it matters:
/tm diagnosticsreports runtime selection, integrations, animation health, and safe-mode failures.
TitleManager currently targets Minecraft 1.8 through 1.21.11.
- Minecraft 1.17+ prefers stable Bukkit/Paper APIs.
- Minecraft 1.8 through 1.16 uses explicit per-version legacy NMS modules only where the API cannot cover the feature.
- Minecraft 1.7 is intentionally no longer supported in the 3.x line.
See the runtime support matrix for the exact behavior by server version.
- Download the plugin jar from GitHub Releases, Hangar, or the existing SpigotMC resource page.
- Place the jar in your server's
plugins/directory. - Restart the server.
- Edit the generated files in
plugins/TitleManager/. - Run
/tm reload.
Fresh installs include default configs and animation files, so the default player-list footer works immediately.
# plugins/TitleManager/player-list.yml
enabled: true
updateIntervalMilliseconds: 50
header: |-
${shine:[0;2;0][0;25;0][0;25;0][&3;&b]My Server}
&r
footer: |-
&7World time: &b%{12h-world-time}
&7Server time: &b%{server-time}
${right-to-left} &b%{online}&7/&b%{max} &7Online Players ${left-to-right}The docs site includes local animation previews and a playground, so you can tune animation timing before putting a config on a live server:
| Command | Purpose |
|---|---|
/tm version |
Show the running TitleManager version and update status. |
/tm reload |
Reload configuration transactionally. |
/tm diagnostics |
Inspect runtime modules, integrations, and safe-mode details. |
/tm animations |
List registered animation placeholders. |
/tm scripts |
Check legacy script support. |
/tm title ... |
Send or broadcast title messages. |
/tm actionbar ... |
Send or broadcast actionbar messages. |
/tm scoreboard toggle |
Toggle your sidebar. |
/tm playerlist toggle |
Toggle your player-list customization. |
TitleManager publishes a small Bukkit-facing API plus the shared animation core.
repositories {
maven("https://repo.tarkan.dev")
}
dependencies {
compileOnly("dev.tarkan.titlemanager:titlemanager-bukkit-api:3.0.0-SNAPSHOT")
}Use TitleManagerServices.get(plugin) for optional integrations, or TitleManagerServices.require(plugin) when TitleManager is a hard dependency.
API references are generated with both JavaDoc and Dokka:
For migration details, see the 2.x to 3.0 migration guide.
./gradlew check buildDocsSite :apps:bukkit-plugin:shadowJar prepareReleaseAssetsUseful outputs:
- Plugin jar:
apps/bukkit-plugin/build/libs/bukkit-plugin-<version>-all.jar - Documentation site:
docs/site/build/ - Browser preview bundle:
docs/site/vite-dist/ - Local public Maven repository bundle:
build/maven-repository/
apps/bukkit-plugin Bukkit/Paper plugin
apps/web-viewer Local animation web viewer
modules/core Shared animation parser and timeline engine
modules/bukkit/api Public Bukkit API
modules/bukkit/defaults Default config and animation resources
modules/bukkit/runtime-* Runtime contracts and Bukkit API adapter
modules/nms Versioned NMS adapters for legacy gaps
docs/site Docusaurus documentation site
mainpublishes3.0.0-SNAPSHOTartifacts when repository publishing is enabled.vX.Y.Z-alpha.Npublishes an Alpha release.vX.Y.Z-beta.Npublishes a Beta release.vX.Y.Zpublishes a stable release.
Publishing is intentionally gated by repository configuration so the imported main branch can be validated before public deploys are switched on.
TitleManager is licensed under the terms in LICENSE.md. The documentation preview font is bundled from IdreesInc/Minecraft-Font under the SIL Open Font License 1.1.