MCPcopy Index your code
hub / github.com/Phoenix616/MineDown

github.com/Phoenix616/MineDown @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
143 symbols 447 edges 7 files 88 documented · 62%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

MineDown-adventure

A library that adds the ability to use a MarkDown inspired markup to write Minecraft chat components!

It provides a custom mark up syntax which is loosely based on MarkDown that adds the ability to use the full power of component messages with the same simplicity as legacy formatting codes. (Which it can still support!) It also includes a way to directly replace placeholders in the messages, both string based and component based ones!

[!IMPORTANT] This requires the kyori-adventure chat API (4.25 or newer) so you need to provide one of the platform libraries in your project in order to use these messages or run on a platform which supports adventure natively (Paper, Velocity)!

See this plugin for a simple implementation.

Syntax

Inline Formatting

Description Syntax More Info Preview
Color legacy &6Text Formatting codes
Color &gold&Text Color names
RGB Hex Color &#ff00ff&Text Full hexadecimal format
RGB Hex Color &#f0f&Text Short format (equivalent to long one)
Gradient &#f0f-#fff&Text Inline gradients
Rainbow &rainbow&Text Inline Rainbow
Rainbow Phase &rainbow:20&Text Inline Rainbow with a phase
Bold **Text**
Italic ##Text##
Underlined __Text__
Strikethrough ~~Text~~
Obfuscated ??Text??

Events

You can define click and hover events with the commonly used MarkDown link syntax as well as specify formatting, font and colors that way.

Simple Syntax

Description Syntax
General syntax [Text](text-color text-formatting... link hover text)
Simple Link [Text](https://example.com)
Simple Command [Text](/command to run)
Link + Hover [Text](https://example.com Hover Text)
Text formatting [Text](blue underline !bold)
Gradient [Text](#fff-#000)
Rainbow [Text](rainbow)
Phased Rainbow [Text](rainbow:20)
Text formatting + Link + Hover [Text](#0000ff underline https://example.com Hover Text)

Advanced Syntax

Description Syntax More Info
General syntax [Text](action=value) ClickEvent.Action, HoverEvent.Action
Link [Text](open_url=https://example.com)
Color [Text](color=red) Color names
RGB Hex Color [Text](color=#ff00ff) Full hexadecimal format
RGB Hex Color [Text](color=#f0f) Short format (equivalent to long one)
RGB Color Gradient [Text](color=#fff-#000) Gradient of two colors. (Supports all color forms)
RGB Color Gradient [Text](color=#fff-#333-#222) Gradient of three colors.
RGB Rainbow [Text](color=rainbow) An RGB rainbow.
Phased RGB Rainbow [Text](color=rainbow:50) An RGB rainbow with a specific phase.
Text Shaddow [Text](shadow=#ff00ff) Specify the shadow of the text
Formatting [Text](format=underline,bold) Specify formatting
Disable Formatting [Text](format=!underline) Disable the specific formatting with a ! prefix
Font [Text](font=custom_font) Set a custom font from a resource pack
Translatable [fallback](translate=translation.key with={value1, value2}) Translatable component with optional replacements
Player head [](player_head=name) Show a player head from a player with a specified name
Player head [](player_head=83688181-ce68-4136-918b-15e88ec2c705) Show a player head from a player with a specified UUID
Player head [](player_head=name hat=false) Show a player head without the hat layer
Player head [](player_head=minecraft:entity/player/wide/alex) Show a player head with a specified client-side texture
Player head [](player_head=name texture=minecraft:entity/player/wide/alex) Show a player head with a specified client-side texture
Player head [](player_head=base64encodedstring) Show a player head using custom base64 encoded online profile textures
Player head [](player_head=name profile={textures=base64encodedstring}) Show a player head with custom profile information
Block/Item [](sprite=item/diamond) Show a block or item sprite
Block/Item [](sprite=item/diamond atlas=blocks) Show a block or item sprite from a specific atlas
Run Command [Text](run_command=/command string) Run command on click
Suggest Command [Text](suggest_command=/command) Suggest a command on click
Copy to Clipboard [Text](copy_to_clipboard=Text to be copied) Copy some text to the clipboard
Change Book Page [Text](change_page=42) Change the page to a certain page number. Only works in books!
Open Dialog (Soon) [Text](show_dialog=custom:my/dialog) Open a dialog on click, by resource location
Open Dialog (Soon) [Text](show_dialog={dialog-definition}) Open a dialog on click, with a custom dialog definition
Send custom action [Text](custom=namespace:key payload={optional-payload}) Execute some custom action specified by namespaced key, requires a plugin to listen on that
Simple Hover [Text](hover=Hover Text) Show hover text
Hover Text [Text](show_text=Hover Text) Show hover text

Core symbols most depended-on inside this repo

append
called by 98
src/main/java/de/themoep/minedown/adventure/MineDownParser.java
value
called by 38
src/main/java/de/themoep/minedown/adventure/MineDownParser.java
hoverEvent
called by 25
src/main/java/de/themoep/minedown/adventure/MineDownParser.java
getValue
called by 23
src/main/java/de/themoep/minedown/adventure/MineDownParser.java
clickEvent
called by 23
src/main/java/de/themoep/minedown/adventure/MineDownParser.java
lenient
called by 19
src/main/java/de/themoep/minedown/adventure/MineDownParser.java
reset
called by 18
src/main/java/de/themoep/minedown/adventure/MineDown.java
sprite
called by 17
src/main/java/de/themoep/minedown/adventure/MineDownParser.java

Shape

Method 134
Class 7
Enum 2

Languages

Java100%

Modules by API surface

src/main/java/de/themoep/minedown/adventure/MineDownParser.java45 symbols
src/main/java/de/themoep/minedown/adventure/MineDown.java30 symbols
src/main/java/de/themoep/minedown/adventure/Util.java22 symbols
src/test/java/de/themoep/minedown/adventure/tests/ParserTest.java15 symbols
src/main/java/de/themoep/minedown/adventure/MineDownStringifier.java13 symbols
src/main/java/de/themoep/minedown/adventure/Replacer.java11 symbols
src/test/java/de/themoep/minedown/adventure/tests/StringifyTest.java7 symbols

For agents

$ claude mcp add MineDown \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact