THIS PACKAGE IS NOT MAINTAINED ANYMORE. IF YOU WANT TO MAINTAIN IT DROP ME A LINE AT fran.mendez[at]hey.com.
OpenAPI Node.js
Code Generator
Use your API OpenAPI 3.x/Swagger 2 definition to generate Node.js ES7-compliant code for your API.
The generated code features:
- ES7
- ESLint
- YAML config file
- Express
- No transpiling
To use it from the CLI:
npm install -g swagger-node-codegenTo use it as a module in your project:
npm install --save swagger-node-codegen- Node.js v7.6+
Usage: snc [options] <swaggerFile>
Options:
-V, --version output the version number
-o, --output <outputDir> directory where to put the generated files (defaults to current directory)
-t, --templates <templateDir> directory where templates are located (defaults to internal nodejs templates)
-h, --help output usage informationThe shortest possible syntax:
snc swagger.yamlSpecify where to put the generated code:
snc swagger.yaml -o ./my-apiconstpath=require('path');constcodegen=require('swagger-node-codegen');constswagger=require('./swagger.json');codegen.generate({
swagger,target_dir: path.resolve(__dirname,'./my-api')}).then(()=>{console.log('Done!');}).catch(err=>{console.error(`Something went wrong: ${err.message}`);});The swagger parameter can be either JSON or a path pointing to a JSON or YAML file.
constpath=require('path');constcodegen=require('swagger-node-codegen');codegen.generate({swagger: path.resolve(__dirname,'./swagger.yml'),target_dir: path.resolve(__dirname,'./my-api')}).then(()=>{console.log('Done!');}).catch(err=>{console.error(`Something went wrong: ${err.message}`);});The function codegen.generate returns a Promise, so it means you can use async/await:
constpath=require('path');constcodegen=require('swagger-node-codegen');try{awaitcodegen.generate({swagger: path.resolve(__dirname,'./swagger.yml'),target_dir: path.resolve(__dirname,'./my-api')});console.log('Done!');}catch(err){console.error(`Something went wrong: ${err.message}`);}- codegen
This module generates a code skeleton for an API using OpenAPI/Swagger.
- generate ⇒
Promise Generates a code skeleton for an API given an OpenAPI/Swagger file.
This module generates a code skeleton for an API using OpenAPI/Swagger.
Generates a code skeleton for an API given an OpenAPI/Swagger file.
| Param | Type | Description |
|---|---|---|
| config | Object | Configuration options |
| config.swagger | Object | String | OpenAPI/Swagger JSON or a string pointing to an OpenAPI/Swagger file. |
| config.target_dir | String | Path to the directory where the files will be generated. |
| config.templates | String | Path to the directory where custom templates are (optional). |
You can create your own templates.
- Fran Méndez (@fmvilas)
- Richard Klose (@richardklose)
