#openapi #codegen #api #contract-first #template-generator #api-first

bin+lib codegenr

基于 Handlebars 模板引擎的快速 json/yaml/openapi 代码生成器

1 个不稳定版本

0.0.2 2022年1月26日
0.0.1 2021年12月14日

#1955 in 开发工具

GPL-3.0-or-later

160KB
3.5K SLoC

CodeGenR

codegenr graphical explanation

安装

安装 Rust : http://rust-lang.net.cn/tools/install. 然后安装 codegenr

cargo install codegenr

或安装开发版本

cargo install --git https://github.com/eventuallyconsultant/codegenr --branch dev

文档

codegenr 文档在 docs.rs 上

默认的 Handlebars 辅助函数文档在此.

贡献

您也可以使用此按钮在 GitPod 中打开仓库在 Gitpod 中打开

在命令行中,您可以

  • cargo test --workspace 运行所有单元测试
  • cargo doc --open 编译并打开本地文档

一些命令行

  • cargo doc --open 编译并打开文档
  • cargo install --path codegenr 从源代码安装 codegenr 命令行
  • cargo install --git https://github.com/eventuallyconsultant/codegenr --branch dev 从最新的 github dev 分支安装 codegenr 命令行

遗留

此工具基于先前在 C# 中编写的工具的设计:CodegenUP.

路线图

  • 加载yaml或json到serde::json

  • 解析$ref标签

  • 将所有生成的文档传递给handlebar模板

  • 实现一些默认助手(并为它们编写一些文档测试)

  • 插件系统

  • 将C#自定义助手迁移到这个新的插件系统

  • 到目前为止,我们可以通过调用一些命令,使用codegenr代替CodegenUP

  • codegenr-cli重命名为codegenr,将codegenr重命名为codegenr-lib

  • crates.io上发布

  • 在项目根目录中有一个codegenr.toml,描述项目根目录中所有要执行的模板

  • 更好的错误(类型化的错误)

  • 解决了Json缓存优化

  • 所有测试在Windows上也能通过

  • 详述/跟踪模式

  • 更好的示例

  • 优化Smol字符串?

  • 文件更改的监视模式

  • 制作一个关于所有这些的VSCode扩展,使其对所有人都更加实时和用户友好

  • 允许合并多个swagger2文档

  • 允许合并多个swagger3文档

  • 将json转换为OpenApi Generator模型,并能够使用所有OpenApi Generator模板?

依赖关系

~13–26MB
~421K SLoC