Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
MiniPlaceholders

MiniPlaceholders

MiniMessage Component-based Placeholders API for Minecraft Platforms

16.7k
59
Decoration
Library
Utility
AboutGalleryChangelogVersions

MiniPlaceholders

WorkFlow Latest Version Discord Modrinth Downloads GitHub Downloads

MiniMessage Component-based Placeholders API for Minecraft Platforms

Compatibility

  • Paper 1.20+
  • Folia 1.20+
  • Velocity 3.3.0+
  • Fabric 1.20+
  • Sponge API 8+

Commands

Velocity

  • /vminiplaceholders parse me "[message with placeholders]"
  • /vminiplaceholders parse player [some-player] "[message with placeholders]"

Paper | Folia | Fabric | Sponge | Krypton

  • /miniplaceholders <parse|help> player [some-player] "[message with placeholders]
  • /miniplaceholders parse player [some-player] "[message with placeholders]"

Example:

  • /miniplaceholders parse me "<player_xp>"
  • /vminiplaceholders parse player 4drian3d "<player_name>"

User Usage

Check our user usage wiki

API

Check the available Javadocs

Or check the Developer Wiki

Java

class Main {
    public static void registerExpansion() {
        final Expansion expansion = Expansion.builder("my-expansion")
                .filter(Player.class)
                .audiencePlaceholder("name", (audience, ctx, queue) -> {
                    final Player player = (player) audience;
                    return Tag.selfClosingInserting(player.getName());
                })
                .globalPlaceholder("tps", (ctx, queue) ->
                    Tag.selfClosingInserting(Component.text(Bukkit.getTps()[0]))
                ).build;
        
        expansion.register();
        
        Player player;
        final TagResolver playerResolver = MiniPlaceholders.getAudiencePlaceholders(player);
        player.sendMessage(miniMessage().deserialize("Player Name: <my-expansion_name>", playerResolver));
    }
}

Kotlin

fun register() {
      val expansion = expansion("my-expansion") {
          filter(Player::class.java)
          audiencePlaceholder("name") { aud, _, _ ->
              aud.getName().asClosingTag()
          }
          globalPlaceholder("tps") { _, _ ->
              Component.text(Bukkit.getTps()[0]).asInsertingTag()
          }
      }
    
    expansion.register()
    
    val player: Player
    val playerResolver = MiniPlaceholders.getAudiencePlaceholders(player)
    player.sendMessage(miniMessage().deserialize("Player Name: <my-expansion_name>", playerResolver))
}

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Compatibility

Minecraft: Java Edition

1.21.x
1.20.x
1.19.x
1.18.x
1.17.x
1.16.x
1.15.x
1.14.x
1.13.x
1.12.x
1.11.x
1.10.x
1.9.x
1.8.x
1.7.x

Platforms

Fabric
Folia
Paper
Purpur
Quilt
Sponge
Velocity

Links

Report issues View source Visit wiki Join Discord server
Sponsor on GitHubDonate on PayPalBuy Me a Coffee

Creators

MiniPlaceholders
MiniPlaceholdersOrganization

Details

Licensed Apache-2.0
Created 2 years ago
Updated 4 months ago

Modrinth is open source.

main@fafd47f

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.