spectrum
vcloud-rest-openapi
spectrum | vcloud-rest-openapi | |
---|---|---|
1 | 1 | |
112 | 12 | |
- | - | |
8.1 | 4.7 | |
6 days ago | 4 months ago | |
Go | Rust | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
spectrum
-
OpenAPI Generator allows generation of API client libraries from OpenAPI Specs
Disclosure: I'm a contributor to the project.
OpenAPI Spec and auto-generated API clients are very useful when multiple languages need to be supported, like when running a developer program. I've worked at companies that both use OpenAPI Generator for official clients and ones that wrote our own tools for API client SDK generation (with different design philosophy). I've used a number of generators myself to compare and submitted fixes / enhancements to OpenAPI Generator. I used the Go client generator a while back and compared it to others, and recently started using the Crystal one.
To get the most the project, the following is useful: (a) need to support multiple languages, (b) ability to update the generator's code, both in Java and templates (Mustache or Handlebars), and (c) ability to discuss design in GitHub issues and the Slack channel.
The nice thing about OpenAPI Spec is that there is an ecosystem of tooling to support it, including rendering API references (HTML and PDF), API explorers (HTML pages to execute API calls), API clients, etc. But there is a learning curve. For writing specs by hand, I use and favor the Stoplight Studio IDE ( https://stoplight.io/studio ). For programmatically analyzing and editing specs, which is especially useful for finalizing auto-generated specs, I've built an OpenAPI Spec SDK library to make this easier ( https://github.com/grokify/spectrum ).
vcloud-rest-openapi
-
OpenAPI Generator allows generation of API client libraries from OpenAPI Specs
I maintain a project that converts from a specific API mostly documented in XSD to JSON schema.
For the specific API I'm interested in XSD and JSON Schema are mostly equivalent. Quite probably it isn't true in the general case.
Check out some of the test cases in this directory to get an idea https://github.com/ccouzens/vcloud-rest-openapi/blob/main/tr...
What are some alternatives?
smithy - Smithy is a protocol-agnostic interface definition language and set of tools for generating clients, servers, and documentation for any programming language.
fusionauth-openapi - FusionAuth OpenAPI client
k8s-openapi - Rust definitions of the resource types in the Kubernetes client API
openapi-generator - OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3)
tsoa - Build OpenAPI-compliant REST APIs using TypeScript and Node
oapi-codegen - Generate Go client and server boilerplate from OpenAPI 3 specifications
m3o - Serverless Micro Services