JSON을 TypeScript로
JSON을 TypeScript로
JSON 샘플을 TypeScript interface와 type alias로 변환하고, 객체 배열 필드 병합, 선택 필드와 null union 추론, 빈 배열과 빈 객체에 맞는 타입 선언 생성을 자동으로 처리합니다. API 응답 모델링, 프런트엔드 타입 초기화, 데이터 구조 정리에 적합합니다.
빠른 시작
자주 쓰는 활용 사례
실제 API 응답을 프런트엔드 페이지, SDK 클라이언트, 통합 테스트용 TypeScript 시작 모델로 빠르게 바꿉니다.
API 계약을 확정하기 전에 혼합 객체 배열을 확인해 optional 필드와 union 타입을 파악합니다.
mock JSON 데이터를 fixture, Storybook 스토리, 프로토타입용 타입 정의로 빠르게 변환합니다.
백엔드 payload 형태가 바뀔 때 User, Meta 같은 중첩 선언을 검토합니다.
활용 팁
제한 사항 및 호환성
개인정보 보호 및 보안
자주 묻는 질문
객체 루트는 interface 선언을 생성합니다. 배열 루트와 원시값 루트는 type alias를 생성합니다. 최상위가 객체 배열이면 루트는 type Root = RootItem[]; 같은 type alias로 유지되고, 항목 구조는 별도로 선언됩니다.
샘플 항목이나 속성이 없으면 생성기는 더 좁은 구조를 추론할 수 없습니다. 그래서 더 대표적인 데이터를 붙여 넣기 전까지 빈 배열은 unknown[]로, 빈 객체는 Record<string, unknown>를 확장하는 interface로 유지합니다.
입력한 이름이 이미 유효한 TypeScript 식별자라면 그대로 유지됩니다. 예: APIResponse. 유효하지 않은 이름은 생성 전에 안정적인 PascalCase 식별자로 정규화됩니다.
현재 생성기는 속성 경로에서 중첩 이름을 정규화하고 충돌도 결정적으로 해결합니다. 그래서 최신 출력은 항상 루트 이름을 붙이는 대신 User, Meta, FooBarClass 같은 이름을 사용합니다.
현재 출력 계약은 의도적으로 export 없는 순수 선언만 반환합니다. 이렇게 하면 결과를 중립적으로 유지할 수 있고, 필요하면 프로젝트 스타일에 맞게 export를 직접 추가할 수 있습니다.