
TextAPI
TextAPI is a Kotlin-native Spigot text engine with a MiniMessage-like syntax, built-in placeholders, gradients, rainbow, 16 pride presets, click/hover/insert events, and a custom TPS ticker. All fully extensible at runtime via a clean handler-based API.
Links
Tags
Creators
Details
1.0.4
Compatibility
Changes
[1.0.4] - Runtime Tags & Gradients, Fully Live
Added
- Full handler-based custom tag registration via
TextTag.TagHandler - Runtime custom tag unregistration
- Runtime named gradient registration via
registerGradient(name, stops) - Runtime named gradient unregistration
TextTag.registeredGradients()to inspect custom gradients- Custom gradient support in the renderer using the same per-character expansion pipeline as built-in gradients
- API methods on
TextServiceandTextAPIfor all tag/gradient registration and removal operations registeredPlaceholders(),registeredTags(), andregisteredGradient()API inspection methods- Expanded
/textapidebug command set:previewtesttagsgradients- namespaced
register placeholder - namespaced
register tag - namespaced
register gradient - namespaced
unregister placeholder - namespaced
unregister tag - namespaced
unregister gradient
- In-game live previews for registered gradients
- In-game full feature test runner covering colors, gradients, pride presets, interactions, placeholders, resets, and escape cases
Changed
TextTagchanged from a string-only runtime tag registry to a full handler registryTextParsernow recognizes runtime custom gradients as gradient-capable tag namesTextRenderernow expands custom gradients through a dedicated collecting frame path- Command UX was redesigned to clearly separate placeholders, tags, and gradients
- Debug output was made much more complete and developer-friendly
- API registration became more expressive and suitable for plugin-side runtime customization
Fixed
- Runtime tags no longer require hardcoded built-in renderer changes
- Runtime gradients now render correctly with smooth interpolation instead of being unsupported
- Custom tags can now use arguments through handler callbacks
- Custom gradients can now be added and removed safely at runtime
- The debug command now exposes the full runtime extensibility surface instead of only placeholders
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:NvPsOCVp:p41VcmPC"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:NvPsOCVp:p41VcmPC"
}
