이미 JSON Schema 쓰고 있다, 모를 수도
package.json — npm 의 schema
VS Code 에서 package.json 을 열고 아무 필드에나 마우스를 올려봐. 거기 뜨는 autocomplete 와 설명은 커뮤니티가 관리하는 JSON Schema https://json.schemastore.org/package.json 에서 오는 거야. 파일 맨 위에 "$schema": "https://json.schemastore.org/package.json" 을 적어두면 연결을 대놓고 못 박는 셈이야. 에디터에 따라 이걸 요구하기도 하는데, 대부분은 파일 이름만 보고 알아채.
tsconfig.json — TypeScript 의 계약
여기도 똑같아. https://json.schemastore.org/tsconfig.json 를 한 번 통독하면 tsconfig 의 모든 필드가 뭘 하는지, 기본값이 뭔지, 어떤 제약이 붙는지가 잡혀. autocomplete 가 바로 이걸 보고 뜨는 거라, 어떤 문서보다 정확해.
OpenAPI — 엔드포인트 묘사하는 schema
OpenAPI 3.x 는 components.schemas 안에서 JSON Schema 를 써 (방언이 살짝 다르지만 거의 그대로 호환돼). Stoplight, Redoc, Swagger UI 같은 도구가 그 schema 로 문서 페이지를 그리고, 클라이언트를 뽑고, 게이트웨이에서 요청과 응답을 검증해. API 계약은 JSON Schema 안에 살아 있고, 나머지는 전부 그걸 그려낸 결과물이야.
'이 필드 뭐 하는 거지' 싶을 때: 처음 보는 config 를 만나면 (새 linter, 새 bundler, 새 CI 도구) Schema Store 에서 그 schema 부터 찾아봐. schema 에 달린
description, enum, default 가 README 보다 명확한 경우가 많아.