YAML → JSON 변환기

YAML을 붙여넣으면 API, JavaScript 코드, JSON Schema 검증에 바로 쓸 수 있는 포맷된 JSON을 얻을 수 있습니다.

JSON

YAML 설정 파일을 JSON으로 변환

YAML은 작성하기 편하지만 많은 도구가 JSON만 받습니다. REST API, JavaScript 코드, JSON Schema 검증기, jq 모두 JSON을 요구합니다. 이 변환기는 YAML을 파싱해 2칸 들여쓰기된 JSON으로 출력합니다. 앵커와 별칭(alias)은 전체 사본으로 펼쳐지고, 주석은 제거되며, 따옴표 없는 값은 YAML 규칙에 따라 타입이 정해집니다. 숫자는 숫자, true와 false는 불리언, ~와 null은 null, 날짜는 ISO 8601 문자열이 됩니다. YAML에 들여쓰기나 구문 오류가 있으면 오류 메시지에 해당 줄과 열이 표시됩니다.

사용 방법

  1. docker-compose.yml이나 GitHub Actions 워크플로 같은 YAML을 붙여넣습니다.
  2. 출력 편집기에서 포맷된 JSON을 확인하거나, 오류 메시지에 표시된 줄을 수정합니다.
  3. JSON을 복사하거나, 교체를 눌러 다시 YAML로 변환합니다.

자주 묻는 질문

YAML 앵커와 별칭은 어떻게 처리되나요?
모두 해석됩니다. JSON에는 문서의 다른 부분을 참조하는 방법이 없으므로, 모든 별칭(*name)은 앵커가 지정된 값의 전체 사본으로 대체됩니다.
값 yes가 왜 여전히 문자열인가요?
파서는 true와 false만 불리언으로 취급하는 YAML 1.2를 따릅니다. yes, no, on, off는 문자열로 유지되므로, 불리언이 필요하다면 true 또는 false로 작성하세요.
---로 구분된 여러 문서가 있는 파일도 변환할 수 있나요?
한 번에 하나의 문서만 변환됩니다. 각 문서를 따로 붙여넣거나, 먼저 하나의 YAML 리스트로 합쳐 주세요.

예시: YAML → JSON

YAML 입력

name: deploy
on:
  push:
    branches: [main]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm test

JSON 출력

{
  "name": "deploy",
  "on": {
    "push": {
      "branches": [
        "main"
      ]
    }
  },
  "jobs": {
    "build": {
      "runs-on": "ubuntu-latest",
      "steps": [
        {
          "uses": "actions/checkout@v4"
        },
        {
          "run": "npm test"
        }
      ]
    }
  }
}

다른 변환