@36node/swagen 中文文档教程

发布于 3年前 浏览 36 项目主页 更新于 3年前

@36node/swagen

versiondownloads

Install

yarn global add @36node/template-cli

Usage

$ swagen -h

Usage: swagen [options] [command]

Options:
  -V, --version      output the version number
  -h, --help         output usage information

Commands:
  koa [options]      Generate code for koa server api
  sdk [options]      Generate code for client sdk
  postman [options]  Transform openapi file to postman collection file

Generate client sdk code

$ swagen sdk -h

Usage: sdk [options] [yamlFile] [name] [dist]

Generate code for client sdk

Options:
  -h, --help  output usage information


# example, default name is filename of yaml file or specified by name option
$ swagen sdk ./petstore.yaml ./sdk petstore

Generate koa server api code

$ swagen koa -h

Usage: koa [options] [yamlFile] [dist]

Generate code for koa server api

Options:
  -h, --help  output usage information


# example, if dist not specified, current dir will be used as default dist
$ swagen koa ./petstore.yaml ./koa

Generate postman collection from openapi

$ swagen postman -h

Usage: postman [options] [yamlFile] [targetFile]

Transform openapi file to postman collection file

Options:
  -h, --help  output usage information

# example, default targetFile name is the openapi info title properity
$ swagen postman ./petstore.yaml ./petstore.postman_collection.json

# will generate petstore.postman_collection.json in pwd
# then can use fastman to import collection to postman

$ fastman import ./petstore.postman_collection.json

Generate mock collection from openapi

$ swagen mock -h

Usage: mock [options] [yamlFile] [dist]

Transform openapi file to json-server data file

Options:
  -c, --count [count]  Add count of mock data to generate, default is 10
  -h, --help           output usage information

# example, default targetFile name is the openapi info title properity
$ swagen mock ./petstore.yaml ./mock/

# will generate data.json and routes.json in mock
# then can use json-server with these data and routes

$ json-server ./mock/db.json --routes ./mock/routes.json

更多关于 json-server 你可以看 这里

Use remote file

# set name with 'petstore'
swagen sdk https://api.36node.com/petstore/v0/openapi.yaml . petstore

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b feature/a-new-command
  3. Commit your changes: git commit -am 'Add a new command'
  4. Push to the branch: git push origin feature/a-new-command
  5. Submit a pull request :D

Add new template

  1. Add new generator js file in src/generators, filename is the template name.
  2. In new generator js file, export default function which generate template.

Author

template-cli © 36node,发布于MIT 许可证。

在贡献者 (list) 的帮助下,由 36node 创作和维护。

github.com/zzswang · GitHub @36node ·推特 @y

@36node/swagen

versiondownloads

Install

yarn global add @36node/template-cli

Usage

$ swagen -h

Usage: swagen [options] [command]

Options:
  -V, --version      output the version number
  -h, --help         output usage information

Commands:
  koa [options]      Generate code for koa server api
  sdk [options]      Generate code for client sdk
  postman [options]  Transform openapi file to postman collection file

Generate client sdk code

$ swagen sdk -h

Usage: sdk [options] [yamlFile] [name] [dist]

Generate code for client sdk

Options:
  -h, --help  output usage information


# example, default name is filename of yaml file or specified by name option
$ swagen sdk ./petstore.yaml ./sdk petstore

Generate koa server api code

$ swagen koa -h

Usage: koa [options] [yamlFile] [dist]

Generate code for koa server api

Options:
  -h, --help  output usage information


# example, if dist not specified, current dir will be used as default dist
$ swagen koa ./petstore.yaml ./koa

Generate postman collection from openapi

$ swagen postman -h

Usage: postman [options] [yamlFile] [targetFile]

Transform openapi file to postman collection file

Options:
  -h, --help  output usage information

# example, default targetFile name is the openapi info title properity
$ swagen postman ./petstore.yaml ./petstore.postman_collection.json

# will generate petstore.postman_collection.json in pwd
# then can use fastman to import collection to postman

$ fastman import ./petstore.postman_collection.json

Generate mock collection from openapi

$ swagen mock -h

Usage: mock [options] [yamlFile] [dist]

Transform openapi file to json-server data file

Options:
  -c, --count [count]  Add count of mock data to generate, default is 10
  -h, --help           output usage information

# example, default targetFile name is the openapi info title properity
$ swagen mock ./petstore.yaml ./mock/

# will generate data.json and routes.json in mock
# then can use json-server with these data and routes

$ json-server ./mock/db.json --routes ./mock/routes.json

More about json-server you can see here

Use remote file

# set name with 'petstore'
swagen sdk https://api.36node.com/petstore/v0/openapi.yaml . petstore

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b feature/a-new-command
  3. Commit your changes: git commit -am 'Add a new command'
  4. Push to the branch: git push origin feature/a-new-command
  5. Submit a pull request :D

Add new template

  1. Add new generator js file in src/generators, filename is the template name.
  2. In new generator js file, export default function which generate template.

Author

template-cli © 36node, Released under the MIT License.

Authored and maintained by 36node with help from contributors (list).

github.com/zzswang · GitHub @36node · Twitter @y

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文