Skip to content

geut/openapi-box

Repository files navigation

Types for your OpenAPI

openapi-box

Generate TypeBox types from OpenApi V3 IDL + End-to-end typesafe HTTP client library.

It works for TypeScript and JavaScript.

Tests JavaScript Style Guide standard-readme compliant

Made by GEUT

Install

$ npm install @geut/openapi-box @sinclair/typebox

Usage

  1. Generate the schema from an OpenApi url (it can a be filepath too):
$ openapi-box https://petstore3.swagger.io/api/v3/openapi.json
  1. Load your schemas into the End-to-end typesafe fetch client:
import { schema } from './schema.js'
import { createClient } from './src/client.js'

const client = createClient({
  schema,
  baseUrl: 'https://petstore.swagger.io/v2'
})
  1. Enjoy your types + validations out of the "box" 😉: openapi

Issues

🐛 If you found an issue we encourage you to report it on github. Please specify your OS and the actions to reproduce it.

Contributing

👥 Ideas and contributions to the project are welcome. You must follow this guideline.

License

MIT © A GEUT project