Thanks to visit codestin.com
Credit goes to github.com

Skip to content

songzhi/openapi-typescript-codegen

 
 

OpenAPI Typescript Codegen

NPM License Build Status Codecov Quality

NodeJS library that generates Typescript clients based on the OpenAPI specification.

This is a fork of openapi-typescript-codegen with some bugfixes and customizations:

  • support x-enum-varnames: string[] and x-enum-descriptions in schema to generate enums with names and descriptions in the field.
  • changed service parameters style

Why?

  • Frontend ❤️ OpenAPI, but we do not want to use JAVA codegen in our builds.
  • Quick, lightweight, robust and framework agnostic.
  • Supports generation of Typescript clients.
  • Supports generations of fetch and XHR http clients.
  • Supports OpenAPI specification v2.0 and v3.0.
  • Supports JSON and YAML files for input.

Known issues:

  • If you use enums inside your models / definitions then those enums are now inside a namespace with the same name as your model. This is called declaration merging. However Babel 7 now support compiling of Typescript and right now they do not support namespaces.

Installation

npm install @lsongzhi/openapi-typescript-codegen --save-dev

Example

package.json

{
    "scripts": {
        "generate": "openapi --input ./api/openapi.json --output ./dist"
    }
    ...
}

Command line

npm install openapi-typescript-codegen -g

openapi ./api/openapi.json ./dist

NodeJS API:

const OpenAPI = require('openapi-typescript-codegen');

OpenAPI.generate(
    './api/openapi.json',
    './dist'
);

About

NodeJS library that generates Typescript or Javascript clients based on the OpenAPI specification

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 93.9%
  • HTML 4.8%
  • JavaScript 1.3%