Repolode
openapi-ts

openapi-ts/openapi-typescript

OpenAPI 3 스키마에서 TypeScript 타입을 생성하고, 이를 기반으로 타입 안전한 fetch 클라이언트를 제공합니다.

스타
8,428
포크
675
열린 이슈
287
마지막 커밋
지난달

어떤 프로젝트인가요?

openapi-typescript는 TypeScript에서 OpenAPI 스키마를 다루기 위한 두 패키지로 구성된 모노레포입니다. 핵심 패키지인 openapi-typescript는 정적인 OpenAPI 3 스키마를 TypeScript 타입 정의로 변환합니다. 덕분에 요청 경로와 매개변수, 응답 본문을 직접 작성하는 대신 컴파일 시점에 검사할 수 있습니다.

두 번째 패키지인 openapi-fetch는 생성된 타입을 사용하는 가벼운 fetch 래퍼입니다. 요청과 응답을 스키마에 맞춰 타입 검사하므로, 클라이언트 코드와 API 정의가 일치하지 않으면 TypeScript 오류가 발생합니다.

이 프로젝트는 이미 API의 OpenAPI 명세를 관리하고 있으며, 클라이언트 코드를 직접 작성하거나 유지보수하지 않고도 타입이 지정된 클라이언트 코드를 사용하려는 프런트엔드 및 풀스택 팀을 대상으로 합니다.

핵심 기능

  • 01정적인 OpenAPI 3 스키마를 TypeScript 타입 정의로 변환합니다.
  • 02생성된 스키마 타입을 사용하는 fetch 클라이언트 openapi-fetch를 제공합니다.
  • 03컴파일 시점에 클라이언트 호출과 API 정의 간의 불일치를 감지합니다.
  • 04프로젝트 주제에 명시된 대로 OpenAPI 3.1을 지원합니다.

활용 사례

  • 백엔드의 OpenAPI 파일을 바탕으로 프런트엔드 앱에서 사용할 타입 지정 API 클라이언트 모델을 생성합니다.
  • 기존 REST API를 위한 타입 안전한 fetch 클라이언트를 구축합니다.
  • CI에서 변경되는 API 스키마에 맞춰 클라이언트 타입을 동기화합니다.

빠른 시작

  1. 1

    npm에서 openapi-typescript를 설치합니다

    npm i -D openapi-typescript typescript
  2. 2

    OpenAPI 스키마에서 타입을 생성합니다

    npx openapi-typescript https://petstore3.swagger.io/api/v3/openapi.json -o ./petstore.d.ts

토픽

자주 묻는 질문

openapi-typescript은(는) 무엇인가요?
OpenAPI 3 스키마에서 TypeScript 타입을 생성하고, 이를 기반으로 타입 안전한 fetch 클라이언트를 제공합니다. openapi-typescript는 TypeScript에서 OpenAPI 스키마를 다루기 위한 두 패키지로 구성된 모노레포입니다. 핵심 패키지인 openapi-typescript는 정적인 OpenAPI 3 스키마를 TypeScript 타입 정의로 변환합니다. 덕분에 요청 경로와 매개변수, 응답 본문을 직접 작성하는 대신 컴파일 시점에 검사할 수 있습니다.
openapi-typescript은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
openapi-typescript은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
openapi-typescript은(는) 아직 유지보수되고 있나요?
6개월 이내 업데이트. openapi-typescript의 마지막 커밋은 2026년 9월 25일입니다.
openapi-typescript은(는) 어디에 사용할 수 있나요?
백엔드의 OpenAPI 파일을 바탕으로 프런트엔드 앱에서 사용할 타입 지정 API 클라이언트 모델을 생성합니다. 기존 REST API를 위한 타입 안전한 fetch 클라이언트를 구축합니다. CI에서 변경되는 API 스키마에 맞춰 클라이언트 타입을 동기화합니다.
openapi-typescript는 어떻게 설치하나요?
npm에서 openapi-typescript를 설치합니다: npm i -D openapi-typescript typescript OpenAPI 스키마에서 타입을 생성합니다: npx openapi-typescript https://petstore3.swagger.io/api/v3/openapi.json -o ./petstore.d.ts
openapi-typescript은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/openapi-ts/openapi-typescript

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트