Skip to content

JSON ↔ YAML

Convert plugin configs between JSON and YAML. Syntax errors show the line they're on.

Indent

YAML input

JSON output
{
  "settings": {
    "prefix": "&8[&6Shop&8] &7",
    "debug": false,
    "currency": "coins"
  },
  "database": {
    "type": "mysql",
    "host": "localhost",
    "port": 3306,
    "pool-size": 10
  },
  "messages": {
    "no-permission": "&cYou don't have permission to do that.",
    "purchased": "&aBought %amount%x %item% for %price%."
  },
  "disabled-worlds": [
    "world_nether",
    "world_the_end"
  ]
}

Converting plugin configs

Most Bukkit, Paper and BungeeCord plugins use YAML for config.yml, while some tools and web panels expect JSON. Both describe the same data, so a config can move between them without losing values.

Comments in YAML (lines starting with #) have no place in JSON, so they are dropped when you convert to JSON. Everything runs in your browser and nothing is uploaded.

Common YAML mistakes

YAML doesn’t allow tabs for indentation, and every key at the same level needs the same indent. Strings that start with &, *, @ or contain : need quotes, which is why colour-coded messages are usually wrapped in quotes.

ZCraft Studios

Ready-made configs for your plugins

Configs for popular plugins, with setup docs, changelogs and support on Discord.