small-swagger-codegen

A small version of swagger-codegen. Does fewer things with less code.

Usage no npm install needed!

<script type="module">
  import smallSwaggerCodegen from 'https://cdn.skypack.dev/small-swagger-codegen';
</script>

README

small-swagger-codegen

Node CI

A small version of swagger-codegen. Does fewer things with less code. Supports Swift, Kotlin, and Javascript (using fetch/EventSource).

Usage

You can either pass parameters on the command line or a configuration file.

Command line example: This will build a Javascript module named my-spec-js-client with a default export of MyApi using snake casing (as opposed to the default camel casing) for methods and parameters, and output to the default directory - client (which can be overridden with --output=someotherdir)

npx small-swagger-codegen --language=js --spec=./my-spec.json --name=MyApi --packageName=my-spec-js-client --snake

Configuration files can be useful when you want to generate a number of clients at the same time, such as in a native app.

{
  "language": "swift",
  "output": "./DevelopmentPods/Generated/",
  "specs": {
    "ApiOne": {
      "spec": "./node_modules/api-one-spec/api-one-spec.json",
      "className": "ApiOneAPI",
      "basePath": "api1"
    },
    "OtherApi": {
      "spec": "./node_modules/other-api-spec/other-api-spec.json",
      "className": "OtherAPI",
      "basePath": "other"
    }
  }
}

Which, if saved in a file called config.json is run with

npx small-swagger-codegen ./config.json