The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 23 openapi-generator Open-Source Projects
-
openapi-generator
OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3)
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
fastapi-starter
A FastAPI based low code starter/boilerplate: SQLAlchemy 2.0 (async), Postgres, React-Admin, pytest and cypress
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
Hawaii
dotnet CLI tool to generate type-safe F# and Fable clients from OpenAPI/Swagger or OData services (by Zaid-Ajaj)
-
openapi-json-schema-generator
OpenAPI JSON Schema Generator allows auto-generation of API client libraries with a focus on JSON schema given an OpenAPI document
-
openapi-generator-go
An opinionated OpenAPI v3 code generator for Go. Use this to generate API models and router scaffolding.
-
utoipauto
Rust Macros to automate the addition of Paths/Schemas to Utoipa crate, simulating Reflection during the compilation phase
-
airbyte-connector-generator-poc
proof of concept to generate Airbyte low-code YAML connectors from API documentation
-
openapi-code-generator
A code generation tool for openapi 3 / 3.1 specifications written in typescript, primarily aimed at generating typescript clients and server stubs. Other target languages may be added in future.
-
openapi-generator-maven-plugin-template-customization-example
An example Maven project that uses the OpenAPI Generator Maven plugin with template customization to generate an API model and server
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Disclaimer: We're an early adopter of Stainless at Mux.
I've spent more of my time than I'd like to admit managing both OpenAPi spec files [1] and fighting with openapi-generator [2] than any sane person should have to. While it's great having the freedom to change the templates an thus generated SDKs you get with using that sort of approach, it's also super time consuming, and when you have a lot of SDKs (we have 6 generated SDKs), in my experience it needs someone devoted to managing the process, staying up with template changes etc.
Excited to see more SDK languages come to Stainless!
[1] https://www.mux.com/blog/an-adventure-in-openapi-v3-api-code...
[2] https://github.com/OpenAPITools/openapi-generator
Project mention: Why I chose django-ninja instead of django-rest-framework to build my project | /r/django | 2023-06-17Hi, while that is the case, same can be done with drf using drf-spectacular
Hi, I want to create my dto's from a bundle file. This works nearly good, I just don't need all the functions which I am getting. I only need the model structs. I am currently using https://github.com/OpenAPITools/openapi-generator-cli via docker and I am passing the bundle.yml inside. I have the following parameter to only get model files:
Project mention: I write HTTP services in Go after 13 years (Mat Ryer, 2024) | news.ycombinator.com | 2024-02-09https://github.com/ogen-go/ogen
Write openapi definition, it'll do routing, definition of structs, validation of JSON schemas, etc.
All I need to do is implement the service.
Validating an integer range for a querystring parameter is just too boring. And too easy to mistype when writing it manually.
Anyways, so far only been playing, so haven't found the bad parts yet.
Project mention: Generating Code Without Generating Technical Debt? | news.ycombinator.com | 2023-11-10I’ve built conviction that code generation only gets useful in the long term when it is entirely deterministic, or filtered through humans. Otherwise it is almost always technical debt. Hence LLM code generation products are a cool toy, but no sensible teams will use them without an amazing “Day 2” workflow.
As an example, in my day job (https://speakeasyapi.dev), we sell code generation products using the OpenAPI specification to generate downstream artefacts (language SDKs, terraform providers, markdown documentation). The determinism makes it useful — API updates propagate continuously from server code, to specifications, then to the SDKs / providers / docs site. There are no breaking changes because the pipeline is deterministic and humans are in control of the API at the start. The code generation itself is just a means to an end : removing boilerplate effort and language differences by driving it from a source of truth (server api routes/types). Continuously generated, it is not debt.
We’ve put a lot of effort into trying to make an LLM agent useful in this context. However giving them control of generated code directly means it’s hard to keep the “no breaking changes”, and “consistency” restrictions that’s needed to make code generation useful.
The trick we’ve landed on to get utility out of an LLM in a code generation task, is to restrict it to manipulating a strictly typed interface document, such that it can only do non-breaking things to code (e.g. adjust comments / descriptions / examples) by making changes through this interface.
When it comes to having an API with hundreds or thousands of endpoints though, this may not be entirely ergonomic. You’ll be spending quite a lot of time writing macros which can bloat your files. To that end, you can also use the utoipauto crate which lets you automate all of the work with only one macro. However, this adds additional compilation time. Whether you’ll want to use it depends on your use case.
Project mention: Show HN: Hacker News API SDKs → Code Generation in Rust | news.ycombinator.com | 2023-10-17Hi Hacker News!
Patrick and Elias here. We built an SDK / Documentation generator for REST APIs. The link included shows the shiny output of our system: the docs! We generated 5 SDKs and docs from the Hacker News OpenAPI we found on GitHub. If you write code in Python, Typescript, Go, Ruby, or Rust, we’d love for you to try an SDK out!
If you want to generate SDKs for your own API try our tool here: https://github.com/Sideko-Inc/sideko
We are both software engineers, and we built this tool because we were spending too much time writing API integrations, supporting integrations, writing documentation, and manually testing APIs at our jobs. We think every engineer can benefit from spending less time on APIs.
The generator is written in Rust because we need the rich type system, macros, and general correctness emphasis to generate working code. The SDKs are typed, they simplify auth, and they handle files.
If you want to learn more, check out our complete write up here: https://sideko.substack.com/p/the-hacker-news-api-enhanced-b...
Thanks everyone,
PK and EP - [email protected]
Project mention: I'm looking to use my openapi spec to dyanamically create types | /r/typescript | 2023-06-20I created typoas to generate either only types or a full client for a specific openapi spec.
Project mention: Show HN: Pre-alpha tool for analyzing spdx SBOMs generated by GitHub | news.ycombinator.com | 2024-04-21I've become interested in SBOM recently, and found there were great tools like https://dependencytrack.org/ for CycloneDX SBOMs, but all I have is SPDX SBOMs generated by GitHub.
I decided to have a go at writing my own dependency track esque tool aiming to integrate with the APIs GitHub provides.
It's pretty limited in functionality so far, but can give a high level summary of the types of licenses your repository dependencies use, and let you drill down into potentially problematic ones.
Written in NextJS + mui + sqlite, and using another project of mine to generate most of the API boilerplate/glue (https://github.com/mnahkies/openapi-code-generator)
openapi-generator related posts
- Show HN: Pre-alpha tool for analyzing spdx SBOMs generated by GitHub
- Show HN: Konfig – SDKs for APIs to write and maintain less API integration
- Generate DTO models from OpenAPI bundle yml
- how to keep the front end and back end models in sync?
- OpenAPI - API documentation standard - Boon for the software engineers
- Validating Next.js API routes with object schemas
- Better Fastly API clients with OpenAPI Generator
-
A note from our sponsor - WorkOS
workos.com | 26 Apr 2024
Index
What are some of the best open-source openapi-generator projects? This list will help you:
Project | Stars | |
---|---|---|
1 | openapi-generator | 19,807 |
2 | drf-spectacular | 2,107 |
3 | openapi-generator-cli | 1,281 |
4 | ogen | 1,072 |
5 | fastapi-starter | 421 |
6 | Ktor-OpenAPI-Generator | 237 |
7 | sdk-codegen | 216 |
8 | openapi-typescript-code-generator | 180 |
9 | speakeasy | 139 |
10 | Hawaii | 132 |
11 | openapi-json-schema-generator | 118 |
12 | openapi-generator-go | 94 |
13 | utoipauto | 62 |
14 | sideko | 45 |
15 | typoas | 35 |
16 | openapi-processor-spring | 32 |
17 | typoa | 23 |
18 | go-oas3 | 20 |
19 | HumanCloningFacilities | 15 |
20 | airbyte-connector-generator-poc | 13 |
21 | openapi-code-generator | 10 |
22 | openapi-generator-maven-plugin-template-customization-example | 7 |
23 | odootools-openapi | 4 |
Sponsored