spectrum
fusionauth-openapi
spectrum | fusionauth-openapi | |
---|---|---|
1 | 3 | |
112 | 6 | |
- | - | |
8.1 | 7.2 | |
5 days ago | 2 days ago | |
Go | Shell | |
MIT License | Apache License 2.0 |
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 ).
fusionauth-openapi
-
OpenAPI Generator allows generation of API client libraries from OpenAPI Specs
I talked to a startup ( https://stainlessapi.com/ ) about a service they provide where they take an OpenAPI spec and build good SDKs on top of it. This included making sure they are idiomatic, included examples, handled exceptions if needed, and some other goodness. I passed for now because they don't have the language support we need and I am not sure if we need their level of sophistication, but others may benefit from talking to them. (I think the founder helped build Stripe's API docs, IIRC.)
As we head down our OpenAPI path (https://github.com/fusionauth/fusionauth-openapi has only been built for the last 9 months), I'm very interested in stories like yours. We're very interested in quality SDKs that are easy to update. But since we control the OpenAPI spec for the product, we might have an easier time than you in some ways.
Thanks for sharing!
-
Ask HN: SaaS Idea: SDK Generation for API's (OpenAPI / gRPC)
As someone who just released an OpenAPI spec for our API and struggled with building client libraries to test that the spec was correctly generated, I'd pay for this, especially if it integrated with the rubygems/packagists/nugets of the world.
Let me know if you want an alpha or beta tester. Our OpenAPI spec is here: https://github.com/fusionauth/fusionauth-openapi and my contact info is in my profile.
- FusionAuth Adds OpenAPI Support
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.
vcloud-rest-openapi - OpenAPI definitions for vCloud Director's Rest API
k8s-openapi - Rust definitions of the resource types in the Kubernetes client API
api - The Up Banking API Specification
openapi-generator - OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3)
OpenAPI-Specifications - The official DocuSign REST API Swagger Specification
oapi-codegen - Generate Go client and server boilerplate from OpenAPI 3 specifications
m3o - Serverless Micro Services