1 个不稳定版本
0.3.0 | 2021 年 10 月 4 日 |
---|
#44 in #tooling
100KB
2.5K SLoC
Paperclip
Paperclip 提供了 OpenAPI 规范的工具。一旦完成,它将提供
- Rust 中高效、类型安全、编译时检查的 HTTP API(服务器、客户端和 CLI)的代码生成。
- 支持处理、验证和托管 OpenAPI 规范。
- 对规范和代码生成的自定义。
它目前正在积极开发中,可能还不适合生产使用。
你可能对以下内容感兴趣
本地开发
- 请确保已安装
rustup
。cd
到此仓库并运行make prepare
以设置您的环境。 - 现在运行
make
来构建和运行测试。
贡献
此项目欢迎所有类型的贡献。没有贡献太小!
如果您想为此项目做出贡献但不知道从何开始,或者如果您需要与此项目相关的帮助,请随时给我发邮件(在 Github 个人资料中)或加入 Discord 服务器。
行为准则
此项目遵循 Rust 行为准则。
许可
根据以下之一获得许可
- Apache 许可证 2.0(《LICENSE-APACHE》或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT 许可证(《LICENSE-MIT》或 http://opensource.org/licenses/MIT)
任选其一。
赞助商
为该项目开发提供赞助的人士
常见问题解答
为什么这个项目生成原始Rust代码而不是利用 过程宏 进行编译时代码生成?
我认为过程宏不是开发REST API的正确方式。我们需要能够以某种方式 查看 生成的代码,以识别名称、字段、支持的方法等。使用过程宏时,你只能猜测。
这并不意味着你不能在编译时生成API。唯一的区别是,你将使用 构建脚本 而不是,并使用 include!
包含相关代码。话虽如此,我们正在用过程宏做其他事情。
编译时抛出的错误看起来并不是很有用。难道没有更好的方法吗?
很遗憾,我没有想到更好的方法。
这里需要新的想法。
依赖关系
~5–23MB
~315K SLoC