@lsongzhi/openapi-typescript-codegen
TypeScript icon, indicating that this package has built-in type declarations

0.1.20 • Public • Published

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'
);

Package Sidebar

Install

npm i @lsongzhi/openapi-typescript-codegen

Weekly Downloads

0

Version

0.1.20

License

MIT

Unpacked Size

172 kB

Total Files

202

Last publish

Collaborators

  • lsongzhi