JSON Text Generator: Formatting Commands Done Right
Build rich formatted text for /tellraw, /title, and custom item names. Choose the current Java component syntax, the older Java format, or Bedrock rawtext before copying the result.
Select the output version before adding events
Java 1.21.5 changed command text components from the older JSON-oriented event fields to inline SNBT with click_event and hover_event. It also renamed event values such as run_command.value to run_command.command. The Java 1.21.5+ tab generates those current fields, while the older Java tab keeps the pre-1.21.5 structure for servers that have not upgraded.
Test interactive text with the player's permissions
A click action does not bypass command permissions. Use suggest_command when players should review or complete a command themselves, and reserve run_command for actions they are already allowed to execute. Modern Java clients may ask for confirmation when a book or chat message tries to run a command that is unrecognized or requires elevated permission.
Java vs Bedrock Format
Current Java commands accept inline SNBT text components and use snake-case event fields. Bedrock uses a rawtext object and supports a different set of component features. Treat them as separate outputs rather than interchangeable JSON.
Click & Hover Events
Import an existing /tellraw command to parse its JSON structure back into the editor. The Import button accepts raw JSON arrays or full Minecraft commands.
JSON Text FAQ
What is the difference between /tellraw and /title?
Tellraw sends formatted text to the chat window and supports click/hover events. Title displays large text on the HUD and does not support clickable events. Both use the same JSON text format.
Why use structured text instead of plain §-codes?
Structured text components can include click events, hover tooltips, scoreboard values, entity selectors, translations, and keybind display. Legacy formatting codes only change visual styling and are not accepted in every modern command context.
How do I make a custom item name that is not italic?
Minecraft renders custom_name in italic by default. Our generator automatically adds "italic":false when the Item target is selected, so your text appears non-italic without any extra steps.
Can I use this for signs and books?
The formatted component can be adapted for signs and written books, but their surrounding item or block data changes across Java versions. Copy the component payload, then place it in a command or generator that targets the exact sign or book format for your Minecraft release.