OpenAPI发电机
如果您想做出贡献,请参阅指南和开放任务列表。
‼️要从Swagger Codegen迁移到OpenAPI Generator,请参阅《迁移指南》 ‼️
?有关更多信息,请参阅Wiki页面和常见问题解答?
?电子书是REST API的代码生成的初学者指南,这对初学者来说是一个很好的起点吗?
配x如果从不受信任的源或环境中获得OpenAPI规格,模板或任何输入(例如选项,环境变量),请确保您在使用OpenAPI Generator在使用OpenAPI Generator来生成API客户端,服务器存根或文档之前避免了这些输入潜在的安全问题(例如,代码注入)。有关安全漏洞,请联系[email protected]。配x
‼️两种“ OpenAPI Tools”(https://openapitools.org- OpenAPI Generator的母体组织)和“ OpenAPI Generator”都不隶属于OpenAPI Initiative(OAI) ‼️
赞助商
如果您发现OpenAPI生成器对工作有用,请考虑通过成为赞助商来要求您的公司支持此开源项目。您也可以通过成为支持者来单独赞助该项目。
谢谢我们的青铜赞助商!
谢谢GoDaddy赞助了域名,Linode赞助了VPS,请检查赞助API监控和Gradle的赞助Develocity
概述
OpenAPI生成器允许生成API客户端库(SDK生成),服务器存根,文档和配置自动给出OpenAPI Spec(支持2.0和3.0)。目前,支持以下语言/框架:
| 语言/框架 |
---|
API客户 | ActionScript , ADA , APEX , BASH , C , C# (.NET 2.0、3.5或更高版本, .NET标准1.3-2.1,.net Core 3.1,.net 5.0。 -Restsdk,Qt5,Tizen,Unreal Engine 4), Clojure , Crystal , Dart , Elixir , Elm ,Elm, Eiffel ,Eiffel, Erlang , Go , Groovy ,Haskell, Haskell ( Http-Client,Servant,servant,servant) 。 ), Jetbrains HTTP客户端, Julia , K6 , Kotlin , Lua , N4JS , Nim,Nim , Node.js/javaScript (ES5,ES6,带有Google封闭编译器的AngularJS ,google Closure编译器注释,流量类型,流量, PHP , Powershell , Python , R , Ruby ,Ruby, Rust (Hyper,Reqwest,Rust-Server), Scala (Akka, http4s ,Scalaz,STTP,Swagger-asswagger-ashnc-httpclient,pekko) ,4.x,5.x,6.x),打字稿(AngularJS,Angular(9.x -18.x),Aurelia,Axios,Fetch,Fetch,evertify,jQuery,jquery,Nestjs,Nestjs,Nestjs,Node,redux -Query,rxjs),,RXJS),,, Xojo , Zapier |
服务器存根 | ADA , C# (ASP.NET Core,Azure函数) , C ++ (Pistache,retbet,qt5 qhttpengine), Erlang , F# ( giraffe ), GO (net/http,http,http,gin,echo) MSF4J,Spring,Undertow,Jax-rs:CDI,CXF,燃烧器,泽西岛,Resteasy,Play框架,PKMST,Vert.x,Apache Camel,Helidon,Helidon), Julia , Kotlin,Kotlin (Spring,KTOR,KTOR,KTOR,VERT.X), PHP (飞行,Laravel,Lumen,Mezzio(FKA Zend Expractive), Slim ,Silex,Symfony), Python (Fastapi,烧瓶), Nodejs , Ruby (Sinatra,rails5), Rust (Rust-Server)(Rust-Server) Lagom,Play,Cask,Scalatra) |
API文档生成器 | HTML , Confluence Wiki , Asciidoc , Markdown , Plantuml |
配置文件 | Apache2 |
其他的 | GraphQL , Jmeter , Ktorm , MySQL模式, Postman Collection ,协议缓冲区, WSDL |
目录
- OpenAPI发电机
- 概述
- 目录
- 1-安装
- 1.1-兼容性
- 1.2-在Maven Central上的工件
- 1.3-下载罐子
- 1.4-建立项目
- 1.5-自制
- 1.6-码头机
- 1.7 -NPM
- 2-入门
- 3-用法
- 3.1-自定义
- 3.2-工作流集成
- 3.3-在线发电机
- 3.4-有关生成代码的许可证信息
- 3.5- IDE集成
- 4-使用OpenAPI发电机的公司/项目
- 5-演示/视频/教程/书籍
- 6-关于我们
- 6.1 -OpenAPI Generator Core团队
- 6.2- OpenAPI发电机技术委员会
- 6.3- OpenAPI发电机的历史
- 7-许可证
1-安装
1.1-兼容性
自2010年初次创建以来,OpenAPI规范已进行了3个修订。OpenAPI-Generator项目具有以下与OpenAPI规范的兼容性:
OpenAPI Generator版本 | 发布日期 | 笔记 |
---|
7.11.0(即将发布的次要版本)快照 | 20.12.2024 | 带有突破变化的次要释放(带有后备) |
7.10.0(最新稳定版本) | 18.11.2024 | 带有突破变化的次要释放(带有后备) |
6.6.0 | 11.05.2023 | 带有突破变化的次要释放(带有后备) |
5.4.0 | 31.01.2022 | 带有突破变化的次要释放(带有后备) |
4.3.1 | 06.05.2020 | 补丁发布(增强功能,错误修复等) |
OpenAPI规格兼容性:1.0、1.1、1.2、2.0、3.0、3.1(Beta支持)
(我们不发布每天/夜间构建。请改用快照)
有关旧版本,请参阅发布页面。
有关被减去的发电机/库/框架,请参阅“拉请请求”页面中的“退役”标签。
1.2-在Maven Central上的工件
您可以在Maven Central上找到我们已释放的工件:
核:
< dependency >
< groupId >org.openapitools</ groupId >
< artifactId >openapi-generator</ artifactId >
< version >${openapi-generator-version}</ version >
</ dependency >
请参阅Maven Central上可用的Openapi-Generator工件的不同版本。
CLI:
< dependency >
< groupId >org.openapitools</ groupId >
< artifactId >openapi-generator-cli</ artifactId >
< version >${openapi-generator-version}</ version >
</ dependency >
请参阅Maven Central上可用的Openapi-Generator-Cli伪像的不同版本。
Maven插件:
< dependency >
< groupId >org.openapitools</ groupId >
< artifactId >openapi-generator-maven-plugin</ artifactId >
< version >${openapi-generator-version}</ version >
</ dependency >
- 请参阅Maven Central上的不同版本的OpenAPI-Generator-Maven-Plugin伪像。
- 读书我
Gradle插件:
< dependency >
< groupId >org.openapitools</ groupId >
< artifactId >openapi-generator-gradle-plugin</ artifactId >
< version >${openapi-generator-version}</ version >
</ dependency >
- 请参阅Maven Central上的不同版本的OpenApi-Gener-Gradle-Plugin-Plugin伪像。
- 读书我
1.3-下载罐子
如果您正在寻找最新的稳定版本,则可以直接从maven.org(Java 11运行时至少抓住):
jar位置: https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.10.0/openapi-generator-cli-7.10.0.jar
://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.10.0/openapi-generator-generator-cli-7.10.10.0.jar
对于Mac/Linux用户:
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.10.0/openapi-generator-cli-7.10.0.jar -O openapi-generator-cli.jar
对于Windows用户,您需要安装WGET,或者可以在PowerShell(3.0+)中使用Invoke-webrequest,例如
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.10.0/openapi-generator-cli-7.10.0.jar
下载罐子后,运行java -jar openapi-generator-cli.jar help
显示使用情况。
对于Mac用户,请确保已安装Java 11(提示:运行java -version
以检查版本),并导出JAVA_HOME
,以便使用支持的Java版本:
export JAVA_HOME= ` /usr/libexec/java_home -v 1.11 `
export PATH= ${JAVA_HOME} /bin: $PATH
启动器脚本
手动JAR下载的一个缺点是,您不会与最新发布的版本保持最新状态。我们在bin/utils/openapi-generator.cli.sh上有一个bash启动器脚本,可以解决此问题。
要安装启动器脚本,请将脚本的内容复制到路径上的位置,并使脚本可执行。
设置此问题的示例(注意:在执行它们之前,请始终从外部系统中卷曲的脚本)。
mkdir -p ~/bin/openapitools
curl https://raw.githubusercontent.com/OpenAPITools/openapi-generator/master/bin/utils/openapi-generator-cli.sh > ~/bin/openapitools/openapi-generator-cli
chmod u+x ~/bin/openapitools/openapi-generator-cli
export PATH=$PATH:~/bin/openapitools/
现在, openapi-generator-cli
已安装。在调用中,它将查询GitHub存储库中的最新版本。如果这匹配了最后下载的JAR,则将像正常情况一样执行。如果找到了较新的版本,则脚本将下载最新版本并执行它。
如果需要调用旧版本的生成器,则可以定义变量OPENAPI_GENERATOR_VERSION
AD HOC或全球。如果您想坚持特定的版本版本,则可以导出此变量。
示例:
# Execute latest released openapi-generator-cli
openapi-generator-cli version
# Execute version 4.1.0 for the current invocation, regardless of the latest released version
OPENAPI_GENERATOR_VERSION=4.1.0 openapi-generator-cli version
# Execute version 4.1.0-SNAPSHOT for the current invocation
OPENAPI_GENERATOR_VERSION=4.1.0-SNAPSHOT openapi-generator-cli version
# Execute version 4.0.2 for every invocation in the current shell session
export OPENAPI_GENERATOR_VERSION=4.0.2
openapi-generator-cli version # is 4.0.2
openapi-generator-cli version # is also 4.0.2
# To "install" a specific version, set the variable in .bashrc/.bash_profile
echo "export OPENAPI_GENERATOR_VERSION=4.0.2" >> ~/.bashrc
source ~/.bashrc
openapi-generator-cli version # is always 4.0.2, unless any of the above overrides are done ad hoc
1.4-建立项目
要从源构建,您需要在$PATH:
克隆项目后,您可以使用Maven包装器从源构建它:
- linux:
./mvnw clean install
- Windows:
mvnw.cmd clean install
NIX用户
如果您是Nix用户,则可以通过键入:
它将进入安装Java 11的外壳。
Direnv支持自动加载Nix开发人员Shell,因此,如果您也使用Direnv,请键入:
并在每次输入项目目录时都设置java
和mvn
具有正确版本的设置。
默认构建包含最小的静态分析(通过CheckStyle)。要使用PMD和Spotbugs运行您的构建,请使用static-analysis
配置文件:
- linux:
./mvnw -Pstatic-analysis clean install
- Windows:
mvnw.cmd -Pstatic-analysis clean install
1.5-自制
要安装,运行brew install openapi-generator
这是生成红宝石客户端的示例用法:
openapi-generator generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g ruby -o /tmp/test/
要重新安装最新的主人,请运行brew uninstall openapi-generator && brew install --HEAD openapi-generator
要安装OpenJDK(先决条件),请运行
brew tap AdoptOpenJDK/openjdk
brew install --cask adoptopenjdk11
export JAVA_HOME= ` /usr/libexec/java_home -v 1.11 `
或通过https://adoptium.net/下载安装程序
要安装Maven(可选),请运行
1.6-码头机
公共预制码头图像
- https://hub.docker.com/r/openapitools/openapi-generator-cli/(官方CLI)
- https://hub.docker.com/r/openapitools/openapi-generator-online/(官方Web服务)
OpenAPI Generator CLI Docker图像
OpenAPI Generator映像是独立可执行的。它可以用作通过Homebrew安装安装的替代方法,也可以用作无法安装Java或升级已安装版本的开发人员。
要使用此图像生成代码,您需要将本地位置作为音量安装。
例子:
docker run --rm -v " ${PWD} :/local " openapitools/openapi-generator-cli generate
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml
-g go
-o /local/out/go
生成的代码将位于当前目录中的./out/go
下。
OpenAPI Generator在线Docker图像
OpenAPI-Generator-Online图像可以充当自托管Web应用程序和用于生成代码的API。可以将此容器合并到CI管道中,并且需要至少两个HTTP请求和一些Docker编排才能访问生成的代码。
示例用法:
# Start container at port 8888 and save the container id
> CID= $( docker run -d -p 8888:8080 openapitools/openapi-generator-online )
# allow for startup
> sleep 10
# Get the IP of the running container (optional)
GEN_IP= $( docker inspect --format ' {{.NetworkSettings.IPAddress}} ' $CID )
# Execute an HTTP request to generate a Ruby client
> curl -X POST --header ' Content-Type: application/json ' --header ' Accept: application/json '
-d ' {"openAPIUrl": "https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml"} '
' http://localhost:8888/api/gen/clients/ruby '
{ " code " : " c2d483.3.4672-40e9-91df-b9ffd18d22b8 " , " link " : " http://localhost:8888/api/gen/download/c2d483.3.4672-40e9-91df-b9ffd18d22b8 " }
# Download the generated zip file
> wget http://localhost:8888/api/gen/download/c2d483.3.4672-40e9-91df-b9ffd18d22b8
# Unzip the file
> unzip c2d483.3.4672-40e9-91df-b9ffd18d22b8
# Shutdown the openapi generator image
> docker stop $CID && docker rm $CID
Docker的发展
您可以使用run-in-docker.sh
来完成所有开发。此脚本将您的本地存储库映射到Docker容器中的/gen
。它还将~/.m2/repository
映射到适当的容器位置。
执行mvn package
:
git clone https://github.com/openapitools/openapi-generator
cd openapi-generator
./run-in-docker.sh mvn package
现在可以在您的工作目录中访问构建工件。
一旦构建, run-in-docker.sh
将充当OpenAPI-Generator-CLI的可执行文件。要生成代码,您需要输出到/gen
(例如/gen/out
)下的目录。例如:
./run-in-docker.sh help # Executes 'help' command for openapi-generator-cli
./run-in-docker.sh list # Executes 'list' command for openapi-generator-cli
./run-in-docker.sh generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml
-g go -o /gen/out/go-petstore -p packageName=petstore # generates go client, outputs locally to ./out/go-petstore
故障排除
如果发生这样的错误,只需执行./mvnw clean seltim -U命令:
org.apache.maven.lifecycle.lifecycleexecutionExcution exception:无法执行目标org.apache.maven.plugins:maven-surefire-plugin:2.19.1:2.19.1:test(test(devault Test(default Test))在项目OpenAPI传播器上发生的同时执行不相同的情况: org.apache.maven.plugins:maven-surefire-plugin:2.19.1:测试:java.lang.exceptionininitializererror不能被施加到java.io.io.io.io.ioexception
./run-in-docker.sh ./mvnw clean install -U
无法执行目标org.fortasoft:gradle-maven-plugin:1.0.8:project openapi-generator-gradle-plugin-plugin-mvn-wrapper上的invoke(默认)(默认)分销'https://services.gradle.org/distributions/gradle-4.7-bin.zip'
现在:没有解决方案:|
在Vagrant中运行Docker
先决条件:安装Vagrant和VirtualBox。
git clone https://github.com/openapitools/openapi-generator.git
cd openapi-generator
vagrant up
vagrant ssh
cd /vagrant
./run-in-docker.sh ./mvnw package
1.7 -NPM
还有一个可用于不同平台的NPM软件包包装器(例如Linux,Mac,Windows)。 (仍然需要JVM)有关更多信息,请参阅该项目的读数。
在全球安装它以在命令行上获得CLI:
npm install @openapitools/openapi-generator-cli -g
openapi-generator-cli version
使用特定版本的“ OpenAPI-Generator-CLI”
openapi-generator-cli version-manager set 7.10.0
或以Dev依赖性安装:
npm install @openapitools/openapi-generator-cli -D
您也可以使用本地建造的罐子或SNAPSHOT
版本。
2-入门
要为petstore.yaml生成php客户端,请运行以下内容
git clone https://github.com/openapitools/openapi-generator
cd openapi-generator
./mvnw clean package
java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml
-g php
-o /var/tmp/php_api_client
(如果您在Windows上,请用java -jar modulesopenapi-generator-clitargetopenapi-generator-cli.jar generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g php -oc:tempphp_api_client
)
您也可以直接从maven.org下载JAR(最新版本)
要获取可用java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help generate
一般选项列表
要获取PHP指定选项的列表(可以通过-c
选项传递给发电机,请运行java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar config-help -g php
3-用法
生成示例客户库库
您可以针对PetStore API建立客户,如下所示:
./bin/generate-samples.sh ./bin/configs/java-okhttp-gson.yaml
(在Windows上,请安装Windows的Git Bash以运行上面的命令)
该脚本使用默认库,即okhttp-gson
。它将使用此命令运行生成器:
java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml
-g java
-t modules/openapi-generator/src/main/resources/Java
--additional-properties artifactId=petstore-okhttp-gson,hideGenerationTimestamp=true
-o samples/client/petstore/java/okhttp-gson
带有许多选项。 Java选项在此处记录。
您还可以使用help generate
命令获得选项(下面仅显示部分结果):
NAME
openapi-generator-cli generate - Generate code with the specified
generator.
SYNOPSIS
openapi-generator-cli generate
[(-a <authorization> | --auth <authorization>)]
[--api-name-suffix <api name suffix>] [--api-package <api package>]
[--artifact-id <artifact id>] [--artifact-version <artifact version>]
[(-c <configuration file> | --config <configuration file>)] [--dry-run]
[(-e <templating engine> | --engine <templating engine>)]
[--enable-post-process-file]
[(-g <generator name> | --generator-name <generator name>)]
[--generate-alias-as-model] [--git-host <git host>]
[--git-repo-id <git repo id>] [--git-user-id <git user id>]
[--global-property <global properties>...] [--group-id <group id>]
[--http-user-agent <http user agent>]
[(-i <spec file> | --input-spec <spec file>)]
[--ignore-file-override <ignore file override location>]
[--import-mappings <import mappings>...]
[--instantiation-types <instantiation types>...]
[--invoker-package <invoker package>]
[--language-specific-primitives <language specific primitives>...]
[--legacy-discriminator-behavior] [--library <library>]
[--log-to-stderr] [--minimal-update]
[--model-name-prefix <model name prefix>]
[--model-name-suffix <model name suffix>]
[--model-package <model package>]
[(-o <output directory> | --output <output directory>)] [(-p <additional properties> | --additional-properties <additional properties>)...]
[--package-name <package name>] [--release-note <release note>]
[--remove-operation-id-prefix]
[--reserved-words-mappings <reserved word mappings>...]
[(-s | --skip-overwrite)] [--server-variables <server variables>...]
[--skip-validate-spec] [--strict-spec <true/false strict behavior>]
[(-t <template directory> | --template-dir <template directory>)]
[--type-mappings <type mappings>...] [(-v | --verbose)]
OPTIONS
-a <authorization>, --auth <authorization>
adds authorization headers when fetching the OpenAPI definitions
remotely. Pass in a URL-encoded string of name:header with a comma
separating multiple values
...... (results omitted)
-v, --verbose
verbose mode
然后,您可以编译和运行客户端,以及对其进行单位测试:
cd samples/client/petstore/java/okhttp-gson
mvn package
其他发电机也有样品。
3.1-自定义
请参阅如何自定义输出(例如软件包名称,版本)的customization.md。
3.2-工作流程(Maven,Gradle,Github,CI/CD)
请参阅Integration.md,以了解如何将OpenAPI Generator与Maven,Gradle,SBT,Bazel,Github和CI/CD集成。
3.3-在线OpenAPI生成器
这是公共在线服务:
- 最新稳定版本:https://api.openapi-generator.tech
- 最新主人:https://api-latest-master.openapi-generator.tech(每小时都会使用最新主人更新)
服务器由Linode赞助
(这些服务是beta,没有任何服务级别的保证)
请参阅在线。有关如何运行和使用openapi-generator-online
(用于openapi-generator
的Web服务的MD。
3.4-有关生成代码的许可证信息
OpenAPI Generator项目旨在为Open API规范用户提供好处。该项目本身具有指定的许可证。此外,请了解以下几点:
- 该项目包含的模板均符合许可。
- 生成的代码故意不受父项目许可
当该项目生成代码时,应按照软件的用户视为并拥有该代码。没有保证(表达或暗示)生成的代码。您可以按照自己的意愿来完成您的意愿,并且一旦生成,代码就是您的责任,并且遵守您认为适当的许可条款。
3.5- IDE集成
这是与OpenAPI Generator集成的社区控制的IDE插件的列表:
- Eclipse:IBM的CodeWind OpenAPI Eclipse工具
- Intellij Idea:Jim Schubert的OpenAPI Generator
- Intellij Idea:Senya撰写的Senya.io编辑
- Reprezen API工作室
- Visual Studio:Christian Resma Helle的REST API客户端代码生成器
- Visual Studio代码:IBM的CodeWind OpenAPI工具
4-使用OpenAPI发电机的公司/项目
这是一些使用OpenAPI生产器中的公司/项目(字母顺序)。要将您的公司/项目添加到列表中,请访问readme.md,然后单击图标以编辑页面。
- 奥尔堡大学
- ACT编码
- Adaptant Solutions AG
- Adesso SE
- 阿迪恩
- Agoda
- 呼吸
- Aleri Solutions GmbH
- 安联
- Angular.schule
- 阿科维亚
- 澳大利亚和新西兰银行集团(ANZ)
- Arduino
- askul
- 亚马逊网络服务(AWS)
- b <> com
- 百度营销
- 带宽
- Banzai云
- bimdata.io
- Bithost GmbH
- 博世互联行业
- Boxever
- 布雷维
- Bunker Holding Group
- 加利福尼亚州立大学,诺斯里奇
- 凸轮
- 坎普托普
- 卡尔斯伯格集团
- 库恩
- 克里斯托弗·皇后咨询公司
- 思科
- Codecentric AG
- Coinapi
- 临时
- configcat
- 克朗GmbH
- 跨界健康
- 杯子
- Datadog
- DB Systel
- deeporute.ai
- Devsupply
- DMTECH GMBH
- 文档
- Dwango
- 边缘冲动
- 元素AI
- Enbotics
- Emineo
- 迅速
- Fenergo
- 自由
- 新生
- 保险丝
- 甘特纳
- GenFlow
- getyourguide
- Glovo
- GMO Pepabo
- Godaddy
- Gumtree
- 这里
- IBM
- Instana
- 互助
- Inquisico
- Juststar
- k6.io
- 克拉纳
- Kronsoft Development
- Kubernetes
- landeshauptstadtmünchen -it@m
- Linode
- 逻辑
- Lumeris
- LVM Versicherungen
- Mailslurp
- Manticore搜索
- 万事达
- Médiavision
- metaswitch
- 月光
- 我的工作
- Namsor
- 永无止境
- Neuerenergy
- 诺基亚
- onsignal
- 选项清算公司(OCC)
- Openet
- 开放效果
- Oracle
- Paxos
- 格子
- 格子公司
- Pinterest
- Ponicode
- Pricefx
- 版画
- Prometheus/AlertManager
- Qavar
- Qedit
- Q探录
- Qulix系统
- raksul
- Raiffeisen Schweiz Genossenschaft
- redhat
- Reprezen API工作室
- 休息
- Robocorp
- Robotinfra
- SEARCHAPI
- 聪明
- 索尼互动娱乐
- 拆分
- 黄貂鱼
- suva
- svix
- 泰尔斯拉
- 腾讯
- 艾苏大学
- tinqin
- 半透明的AP
- 旅行时间平台
- Tribalscale
- Trifork
- TUI Infotec GmbH
- Twilio
- 叽叽喳喳
- UNBLU Inc。
- 狡猾
- VMware
- WBT分解
- 沃利特
- WSO2
- 凭证
- Xero
- 雅虎日本
- Viadee
- Vonage
- Yitu技术
- 喊叫
- Zalando
- 3DS OUTSCALE
5-演示/视频/教程/书籍
- 2018/05/12- OpenAPI发电机 - 社区驱动で成长するコードジェネレータ中野暁人
- 2018/05/15-启动杰里米·布雷森(Jeremie Bresson)的新开源项目
- 2018/05/15 -REST API仕様からAPIクライアントやスタブサーバを自动生成する「OPENAPI GENTARATOR」オープンソースで公开。宣传codegenからのフォーク公共关键
- 2018/06/08 -Swagger Codegen现在是Johanneshoppe的OpenAPI Generator
- 2018/06/21-通过Christophe Bornet在Jhipster Conf 2018上将您的JHIPSTER应用程序与OpenAPI和GRPC连接到API的世界
- 2018/06/22 -OpenAPI Generatorでgatling客户端を生成してみた在ソモサン
- 2018/06/27-从领导开源项目中学到的教训,支持30多种编程语言 - William Cheng在Linuxcon + ContionerCon + ContinerCon + Cloudopen China 2018
- 2018/07/19- OpenAPI发电机贡献QuickStart -RingCentral Go SDK John Wang
- 2018/08/22 -Yusuke iinuma的OpenAPI Generatorのプロジェクト构成などのメモ
- 2018/09/12 -Reprezen和OpenAPI 3.0:现在是Miles Daffin的时间
- 2018/10/31-露天生机的节点包装器包装器
- 2018/11/03- openapi发电机 + golang + flutterでアプリ开発ryuichi daigo
- 2018/11/15-基于openapi3.0 yaml yaml java代码的一次实践代码的一次实践
- 2018/11/18-从lornajane博客中从OpenAPI生成php库代码
- 2018/11/19 -Eclipsecon Europe 2018的Jeremie Bresson(UNBLU)无处不在OpenApis
- 2018/12/09- @watiko by Openapi -generatorをカスタマイズする方法
- 2019/01/03-使用Mikkel Flindt Heisterberg的OpenAPI -Generator从Apex致电Apex的Swagger服务
- 2019/01/13- openapi发电机で@ky_yk_d restfulapiの定义书から色々自动生成する
- 2019/01/20-与Anil Can Aydin的Contract -First API开发与OpenAPI发电机和连接
- 2019/01/30-米兰·桑卡(Milan Sonkar)使用Open -API发电机的API快速应用开发
- 2019/02/02 - 平静を保ち、コードを生成せよ 平静を保ち、コードを生成せよ openapi发电机诞生の背景と轨迹〜
- 2019/02/20-菲尔·克拉夫(Phil Cluff)的OpenAPI V3代码生成冒险
- 2019/02/26-建筑API服务:Ratros Y的初学者指南。
- 2019/02/26-与OpenAPI建立API:RatrosY。在Google Cloud Platform博客中
- 2019-03-07- OpenAPI发电机で春季靴とtomofumi Chiba的Angularをタイプセーフに系ぐ
- 2019-03-16- vadosware的Vados手册OpenAPI V3的快速介绍
- 2019-03-25-亚历山大·杜蒙特(Alexander Duemont
- 2019-03-25- @Amuyikam的OpenAPI发电机を试してみる
- 2019-03-27-OpenAPI3 を使ってみよう!
- 2019-04-17-OpenAPIによるスキーマファースト开発の実施サンプルと云运行について @Yukey1031
- 2019-04-18-如何将OpenAPI3用于API开发人员(Rubykaigi 2019), @ota42y在Rubykaigi 2019
- 2019-04-29-威廉·郑(William Cheng)
- 2019-05-01-设计并从Java,Python,c#等等设计和生成REST API,以及更多
- 2019-05-17-使用Antonie Zafirov的Swagger/OpenAPI生成Spring Boot Rest API
- 2019-05-22-William Cheng(Xin Meng)
- 2019-05-24-William Cheng撰写
- 2019-06-24-William Cheng在Kubernetes贡献者Summits上海2019
- IBM的2019-06-28 Eclipse Marketplace中的CodeWind OpenAPI工具
- IBM的2019-06-29 CodeWind OpenAPI工具
- 2019-07-04-William Cheng,中野暁人,和田拓朗
- 2019-07-08- OpenAPI发电机にコントリビュートしたら社名が载った话。(CAM)-CAM技术博客CAM,Inc.。
- 2019-07-14- openapi发电机でpythonのクライアントライブラリを作成したyuji38kwmt
- 2019-07-19-开源项目的开发人员体验(DX):如何吸引开发人员并建立威廉·郑(William Cheng)的成长中的开发人员社区,中野暁人在日本开源峰会2019年
- 2019-08-14-塞巴斯蒂安·伯格斯塔尔(Sebastian Burgstaller)在Bitmovin的Openapi旅程中
- 2019-08-15-APIのコードを自动生成させたいだけならgrpcでなくてもよくない?由M3,Inc。
- 2019-08-22-マイクロサービスにおけるweb apiスキーマの管理 - graphql grpc,openapi t by @ota42y
- 2019-08-24-SwaggerドキュメントからOpenAPI Generatorを使ってモックサーバー作成を使ってモックサーバー作成
- 2019-08-29- peakxie by peakxie在腾讯云社区
- 2019-08-29-全面进化:Kubernetes CRD 1.16 GA前瞻
- 2019-09-01-使用Daniel Persson的OpenAPI(YouTube视频)创建PHP-SLIM服务器
- 2019-09-06-vert.x和openapi by Stephan h Wissel在Wissel.net博客上
- 2019-09-09-云原生开发 - 在IBM云文档中创建静止的微服务
- 2019-09-14-在万事达卡开发人员平台上生成和配置万事达卡API客户端
- 2019-09-15-露天(Swagger)导入下调べshoichi kuraoka
- 2019-09-17-教程:使用http4k的OpenAPI3记录HTTP4K API
- 2019-09-22- @ota42y by OpenAPI 3を完全に理解できる本
- 2019-09-22- RESTFUL API:Amir Lavasani的OpenAPI规范教程
- 2019-09-22-将SDK重新定义为Sid Maestre(Xero)的软件多样性套件
- 2019-09-23-Swaggerからopenapi发电机で春季のコードを自动生成
- 2019-09-24-Eine Stunde首先是MIT API! @Janweinschenker在Java论坛北美
- 2019-10-09- openapi-feenatorで生成したakira tanimura
- 2019-10-10- Criteo的高级软件工程师Thomas Peyrard自动生成REST客户
- 2019-10-12-OpenAPI自动生成客户to
- 2019-10-16-如何更快地运送API?西蒙·吉利亚姆斯(Simon Guilliams) @ ponicode
- 2019-10-22-OpenAPI + Spring Boot(Kotlin)でファイルダウンロードAPIを作成するYuki Furukawa
- 2019-10-24-微型openapi-首先代码还是设计?彼得[pɛʃə] Steiner在Eclipsecon Europe 2019
- 2019-11-06-基于OpenAPI V3规格生成API客户
- 2019-11-06- openapiを利用して自前のapiサーバー(sinatra)を移植した时のメモYasuhiro Abe
- 2019-11-07- API首次开发与OpenAPI - 您应该练习它!尼克·范·霍夫(Nick van Hoof)在Devoxx比利时2019
- 2019-11-08-Enrico Costanzi撰写的Enrico Costanzi在Jhipster Conf 2019在巴黎举行
- 2019-11-11- @unhurried的打字稿REST APIクライアント
- 2019-11-11-一个规定所有这些的规格 - Andreas Litt在Code.Talks 2019中采取行动的OpenAPI
- 2019-11-13-OpenAPI 3.0编辑器和发电机,带有Spring Boot示例,以简单的方式
- 2019-11-17- YouTube的OpenAPI Generator YouTube播放列表
- 2019-11-20-洛娜·米切尔(Lorna Mitchell)的OpenAPI简介,2019年
- 2019-11-20-如何通过Anuraj从OpenAPI规格中生成角度代码
- 2019-11-23-SwaggerではないOpenAPI规格3.0によるapiサーバー开発
- 2019-11-24-加速扑动开发,伊琳娜·索斯韦尔(Irina Southwell)的OpenAPI和DART代码生成
- 2019-11-25- @pochopocho13 by OpenAPI-Generatorで手軽にスタブサーバとクライアントの生成
- 2019-11-26-Cordacon 2019亮点:Corda客户端API的Braid Server和OpenAPI发电机Adel Rustum在B9LAB
- 2019-12-03-通往较少编码的道路:Corda Blog上的自动生成的息肉
- 2019-12-04- Angular + nestjs + OpenApi(Swagger)でマイクロサービスを视野に入れた环境を考える
- 2019-12-05-肖恩·沙利文(Sean Sullivan)在Java VM上的代码生成
- 2019-12-17- openapi发电机でoauth2アクセストークン発行のコードまで生成してみる
- 2019-12-23-使用ADA作为Stephane Carrez的网络开发
- 2019-12-23- openapi のスキーマを分割・构造化していく方法 のスキーマを分割・构造化していく方法
- 2020-01-17- YouTube上的纸浆3.0 GA的OpenAPI演示
- 2020-01-19-为什么为什么将REST API记录为代码? Dev社区的Rolf Streefkerk
- 2020-01-28-用马特·泰勒(Matt Tyler)的Openapi恢复无服务器的招摇
- 2020-01-30- openapi发电机へのコントリビュートYutaka0m
- 2020-02-01-使用OpenApi在Fosdem的Dennis Kliban最大化您的纸浆3体验
- 2020-02-07-为什么您应该在API会议上使用Nick Van Hoof的API设计使用OpenAPI
- 2020-02-17-红宝石:使用OpenAPI在Brightbox的Neil Wilson验证Kubernetes配置
- 2020-02-20- Sid Maestre(Xero)的未来建筑SDK(Xero)
- 2020-02-27-NUXT利用プロダクトでie11と仲良くするためのE2Eat medpeer.co.jp技术博客
- 2020-02-29-为在脱离连接的农村环境中部署的物联网设备(会议论文)提供支持,由塞尔吉奥·雷索(Sergio Laso),丹尼尔·弗洛雷斯·玛特(Daniel Flores-Martín),胡安·路易斯·埃雷拉卡洛斯(Juan Luis Herreracarlos),canaljuan曼努埃尔(Canaljuan)
- 2020-03-02-如何从迈克尔·霍夫曼(Michael Hoffmann)的OpenAPI规范中生成角和弹簧代码
- 2020-03-02-OpenAPI Generator + Typescriptで始める自动生成の型に守られた豊かなクライアント生活で始める自动生成の型に守られた豊かなクライアント生活
- 2020-03-10- OpenAPI发电机聚会#1 by中野暁人在OpenAPI Generator Meetup#1
- 2020-03-15-负载测试API用Swagger/OpenAPI和K6测试
- 2020-04-13-俺的【oas】との向き合い方(爆速でopenapiと友达になろう)在Optim Blog中
- 2020-04-22-北欧API的Kristopher Sandoval撰写的OpenAPI发电机简介
- 2020-04-27-我们如何使用打开的API V3规范来自动生成API文档,代码 - 刺激和客户的客户,作者撰写
- 2020-05-09- sachie kamba的OpenAPIでお手軽にモックAPIサーバーを动かす
- 2020-05-18- Alfonz Jan Frithz的OpenAPI 3与Spring Boot休息
- 2020-05-19- Chris Tankersley在Nexmo的Dead Simple API与Open API
- 2020-05-22-打字稿REST API客户端由“不休闲”
- 2020-05-28-【使用lodify + Swagger建置可共用的line line notify bot】 -#nijia @ chatbot开发人员台湾#19小聚#19小聚
- 2020-05-28-与Laravel建造API,使用Openapi by Chris Tankersley在Laracon EU建造
- 2020-06-12-互操作性:施工:Michele Albano的代码生成,Brian Nielsen在2020 IEEE工业网络物理系统会议上(ICPS)
- 2020-06-23-新规サーバーアプリケーションに打字稿を采用してみた在CAM技术博客上
- 2020-06-29-伪影摘要:Sergio Laso在Android移动设备和微控制器上的API部署; Marino Linaje;何塞·加西亚·阿隆索;胡安·穆里洛(Juan M. Murillo); Javier Berrocal在2020年IEEE Pervasive Computing and Communications(PERCOM)国际会议
- 2020-07-07-5最佳API文档工具,Susanna Bouse在DreamFactory博客上
- 2020-07-12-打开API 3.0の定义からgolang @professor(Qiita Blog)
- 2020-07-20-Datadog API客户端库现已可用于Java,并在Datadog博客上遵守Jordan ofey
- 2020-07-23-使用Nuno Reis的Open API生成.NET Core的客户端SDK
- 2020-07-26-dartのhttp_interceptorライブラリを使うと配列のクエリパラメータが消えてしまう件の応急处置 @gyamoto
- 2020-08-01-马丁·麦克沃特(Martin McWhorter
- 2020-08-03-Criando Bibliotecas para para para para restful com Openapi,宣传编辑E OpenAPI发电机Everis Brasil(NTT数据公司)
- 2020-08-19-マイクロサービスを连携してみよう冈井(おかい),泉泉(いずみ)
- 2020-08-25-OpenAPI Generatorと打字稿で型安全にフロントエンド开発をしている话在Smarthr Tech博客上
- 2020-09-10- cedric Ziel在Instana博客上与Instana的OpenAPI简介
- 2020-09-17-使用ghufran Zahidi的OpenAPI-Generator生成PowerShellSDK
- 2020-09-24-如何自动化API代码生成(OpenAPI/Swagger)并提高生产力 - 带有React本地的教程,由Sanjin Celeski的Typescript提供
- 2020-09-25-生成patric的Openapi Angular Angular客户端
- 2020-10-24-与Microsoft Identity合作 - 约瑟夫·瓜达诺
- 2020-10-31 - [B2] OpenAPI规范으로-세이프하게-api개발하기:희망편vs절망편
- 2020-11-05-自动化的REST-API代码生成:Stefan Rottenter的Wie It-Systeme Miteinander Sprechen,在大规模艺术博客上
- 2020-12-01- OpenAPI发电机で @saki Degineering toのapiサーバー/クライアントコードを自动生成する
- 2020-12-04-缩放William Cheng的OpenAPI发电机的测试覆盖范围,William Cheng在开源峰会日本 + Automotive Linux Summit 2020(幻灯片)
- 2020-12-09-プロジェクトにopenapi发电机で自动生成された型付きapi客户端を导入した话 @yoshifujit
- 2020-12-15- next.js + Nestjs + GraphQlで変化に追従するフロントエンドへで変化に追従するフロントエンドへ〜〜〜〜日本技术博客
- 2021-01-08-您好,新API - 杰里米·舒尔曼(Jeremy Schulman)在美国职棒大联盟的第1部分
- 2021-01-18-「アプリ开発あるある」を疑うことから始まった、API客户端コードの自动生成【デブスト2020】codezine编集部
- 2021-02-05- Benjamin Klatt在Viadee的Rest-Api-Roundtrip和Springdoc和Openapi Generator
- 2021-02-17- cloud @viadee的springdoc和openapi发电机的REST-API-ROUNDTRIP
- 2021-03-08- openapi Generator工具的躺坑尝试在CSDN官方博客
- 2021-03-16-如何基于招摇使用openapi发电机生成jmeter 脚本?
- 2021-03-24-takefumi yoshii
- 2021-03-28-尝试Nestjs第4部分:Arnaud Cortisse的OpenAPI文档生成打字稿客户端
- 2021-03-31-使用OpenAPI Genertator在Baeldung上使用OpenAPI发电机的Open API服务器实现
- 2021-03-31-使用OpenAPI Generator实现opation Api Server
- 2021-04-19-介绍Twilio的Twilio的OpenAPI规格Beta,Gareth Paul Jones在Twilio Blog上
- 2021-04-22-在尼古拉斯·杰拉布(Nicolas Jellab
- 2021-04-27-从零到发行Powershell API客户在Powershell画廊内的William Cheng在Powershell + DevOps的William Cheng Global Summit 2021
- 2021-05-31-flutterで开放API发电机(Swagger)を使うaakira
- 2021-06-22- Prasanth Gullapalli的REST API文档和客户生成
- 2021-07-16-银行事业のサーバーサイド开発について /线京都开発室京都开発室エンジニア采用说明会,罗伯特·米切尔
- 2021-07-19- Sylhare的Kotlin发行代码生成
- 2021-07-29-如何重写Curtis Poe的巨大代码库
- 2021-08-21-使用Swagger 1的生成客户端API,flowsquad.io
- 2021-09-11-在AWS ParallelCluster API官方文档中调用AWS AWS ParallelCluster API
- 2021-09-20 - OpenAPI Generator - The Babel Fish of the API World by Cliffano Subagio (Principal Engineer at Shine Solutions) at Apidays LIVE Australia 2021
- 2021-10-02 - How to Write Fewer Lines of Code with the OpenAPI Generator by Mikhail Alfa
- 2021-10-12 - OpenAPI Generator : 4000 étoiles sur GitHub et des spaghettis by Jérémie Bresson at Devoxx FR 2021
- 2021-10-17 - Generate a TypeScript HTTP Client From An OpenAPI Spec In DotNET 5 by Richard Willis
- 2021-11-06 - スタートアップの開発で意識したこと by woo-noo
- 2021-11-09 - Effective Software Development using OpenAPI Generator by Ajil Oomme
- 2021-12-07 - An Introduction to OpenAPI by Na'aman Hirschfeld
- 2022-01-02 - Towards a secure API client generator for IoT devices by Anders Aaen Springborg, Martin Kaldahl Andersen, Kaare Holland Hattel, Michele Albano
- 2022-02-02 - Use OpenApi generator to share your models between Flutter and your backend by Guillaume Bernos at Flutter Vikings Conference 2022 (Hybrid)
- 2022-03-15 - OpenAPI Specでハイフン区切りのEnum値をOpenAPI Generatorで出力すると、ハイフン区切りのまま出力される by yuji38kwmt
- 2022-04-01 - OpenAPI Generatorのコード生成とSpring Frameworkのカスタムデータバインディングを共存させる in ZOZO Tech Blog
- 2022-04-06 - Effective Software Development using OpenAPI Generator by Ajil Oommen (Senior Flutter Developer)
- 2022-05-13 - A Path From an API To Client Libraries by Filip Srnec at Infobip
- 2022-06-01 - API First, using OpenAPI and Spring Boot by Micael Estrázulas Vianna
- 2022-06-10 - Autogenerating Clients with FastAPI and Github Actions by Andrew Israel
- 2022-06-12 - Mustache templates with OpenAPI specs by Beppe Catanese
- 2022-07-01 - Generate API contract using OpenAPI Generator Maven plugin by Khanh Nguyen
- 2022-07-22 - 使用OpenAPI Generator Maven plugin开发api优先的java客户端和服务端代码 by Lincest
- 2022-08-01 - Tutorial: Etsy Open API v3 (ruby) by Thierry Joyal
- 2022-09-03 - OpenAPI Generator For Go Web Development by Kevin Hu
- 2022-10-01 - OpenAPI Generatorをカスタマイズしたコードを生成する(Swagger Codegenとほぼ同じ) by きり丸
- 2022-10-21 - Kotlin(Spring Boot)の API を OpenAPI Generator で自動生成 by msksgm
- 2022-10-26 - Quarkus Insights #106: Quarkiverse Extension Spotlight: OpenApi Generator by Quarkusio
- 2022-11-28 - The REST API implementation flow by Imre Tömösvári
- 2022-12-13 - API-First with Spring WebFlux and OpenAPI Generator by Eric Anicet
- 2023-01-06 - Major Improvements with Helidon and OpenAPI by Tim Quinn
- 2023-02-02 - Replacing Postman with the Jetbrains HTTP Client by julien Lengrand-Lambert
- 2023-03-15 - OpenAPI Generatorに適したOpenAPIの書き方 by ZOZO Tech Blog
- 2023-03-19 - EXOGEM: Extending OpenAPI Generator for Monitoring of RESTful APIs by Daniel Friis Holtebo, Jannik Lucas Sommer, Magnus Mølgaard Lund, Alessandro Tibo, Junior Dongo & Michele Albano at "ICSOC 2022: Service-Oriented Computing – ICSOC 2022 Workshops “
- 2023-03-28 - API-First Design with OpenAPI Generator by Jonathan Manera
- 2023-03-28 - ハンズオンで学ぶサーバーサイド Kotlin(Spring Boot&Arrow&OpenAPI Generator)v1.0.1 by msk
- 2023-04-01 - OpenAPI Client Code Generation by Kwo Ding
- 2023-04-27 - [Create an Angular Client using OpenAPI Specifications](Create an Angular Client using OpenAPI Specifications) by Patric
- 2023-05-16 - Adyen for Java developers by Beppe Catanese, Developer Advocate, Adyen
- 2023-05-18 - 如何基于 Swagger 使用 OpenAPI Generator 生成 JMeter 脚本? by 高楼(Zee)
- 2023-06-28 - Generate API contract using OpenAPI Generator Maven plugin by Khanh Nguyen
- 2023-06-30 - Generate Client SDKs with OpenApi Generator in Springboot by Vinayak Ramavath
- 2023-12-10 - UnityでOpenAPI Generatorを使う by Soup Tori
- 2024-01-24 - Comment générer des stubs wiremock avec openapi generator by Alexis Couvreur
- 2024-03-04 - Generating TypeScript Types with OpenAPI for REST API Consumption by PullRequest
- 2024-03-07 - Fully typed Web Apps with OpenAPI (Part 1) by Guillaume Renard
- 2024-03-08 - Laravel OpenAPIによる "辛くない" スキーマ駆動開発 by KentarouTakeda
6 - About Us
What's the design philosophy or principle behind OpenAPI Generator?
We focus on developer experience. The generators should produce code, config, documentation, and more that are easily understandable and consumable by users. We focused on simple use cases to start with (bottom-up approach). Since then the project and the community have grown a lot: 600k weekly downloads via NPM CLI wrapper, 30M downloads via openapi-generator-cli docker image just to highlight a few. We've gradually supported more features (eg oneOf, anyOf introduced in OpenAPI 3.0) in various generators and we will continue this approach to deliver something based on our understanding of user demand and what they want, and continue to add support of new features introduced in OpenAPI specification (such as v3.1 and future versions of the OpenAPI specification).
6.1 - OpenAPI Generator Core Team
OpenAPI Generator core team members are contributors who have been making significant contributions (review issues, fix bugs, make enhancements, etc) to the project on a regular basis.
Core Team Members
- @wing328 (2015/07) ❤️
- @jimschubert (2016/05) ❤️
- @cbornet (2016/05)
- @jmini (2018/04) ❤️
- @etherealjoy (2019/06)
❤️ = Link to support the contributor directly
Template Creator
NOTE : Embedded templates are only supported in Mustache format. Support for all other formats is experimental and subject to change at any time.
Here is a list of template creators:
- API Clients:
- Ada: @stcarrez
- Apex: @asnelling
- Bash: @bkryza
- C: @PowerOfCreation @zhemant ❤️
- C++ REST: @Danielku15
- C++ Tiny: @AndersSpringborg @kaareHH @michelealbano @mkakbas
- C++ UE4: @Kahncode
- C# (.NET 2.0): @who
- C# (.NET Standard 1.3 ): @Gronsak
- C# (.NET 4.5 refactored): @jimschubert ❤️
- C# (GenericHost): @devhl-labs
- C# (HttpClient): @Blackclaws
- Clojure: @xhh
- Crystal: @wing328
- Dart: @yissachar
- Dart (refactor): @joernahrens
- Dart 2: @swipesight
- Dart (Jaguar): @jaumard
- Dart (Dio): @josh-burton
- Elixir: @niku
- Elm: @eriktim
- Eiffel: @jvelilla
- Erlang: @tsloughter
- Erlang (PropEr): @jfacorro @robertoaloi
- Groovy: @victorgit
- Go: @wing328 ❤️
- Go (rewritten in 2.3.0): @antihax
- Godot (GDScript): @Goutte ❤️
- Haskell (http-client): @jonschoning
- Java (Feign): @davidkiss
- Java (Retrofit): @0legg
- Java (Retrofit2): @emilianobonassi
- Java (Jersey2): @xhh
- Java (okhttp-gson): @xhh
- Java (RestTemplate): @nbruno
- Java (Spring 5 WebClient): @daonomic
- Java (Spring 6 RestClient): @nicklas2751
- Java (RESTEasy): @gayathrigs
- Java (Vertx): @lopesmcc
- Java (Google APIs Client Library): @charlescapps
- Java (Rest-assured): @viclovsky
- Java (Java 11 Native HTTP client): @bbdouglas
- Java (Apache HttpClient 5.x): @harrywhite4 @andrevegas
- Java (Helidon): @spericas @tjquinno @tvallin
- Javascript/NodeJS: @jfiala
- JavaScript (Apollo DataSource): @erithmetic
- JavaScript (Closure-annotated Angular) @achew22
- JavaScript (Flow types) @jaypea
- Jetbrains HTTP Client : @jlengrand
- JMeter: @davidkiss
- Julia: @tanmaykm
- Kotlin: @jimschubert ❤️
- Kotlin (MultiPlatform): @andrewemery
- Kotlin (Volley): @alisters
- Kotlin (jvm-spring-webclient): @stefankoppier
- Kotlin (jvm-spring-restclient): @stefankoppier
- Lua: @daurnimator
- N4JS: @mmews-n4
- Nim: @hokamoto
- OCaml: @cgensoul
- Perl: @wing328 ❤️
- PHP (Guzzle): @baartosz
- PHP (with Data Transfer): @Articus
- PowerShell: @beatcracker
- PowerShell (refactored in 5.0.0): @wing328
- Python: @spacether [:heart:][spacether sponsorship]
- Python-Experimental: @spacether [:heart:][spacether sponsorship]
- Python (refactored in 7.0.0): @wing328
- R: @ramnov
- Ruby (Faraday): @meganemura @dkliban
- Ruby (HTTPX): @honeyryderchuck
- Rust: @farcaller
- Rust (rust-server): @metaswitch
- Scala (scalaz & http4s): @tbrown1979
- Scala (Akka): @cchafer
- Scala (sttp): @chameleon82
- Scala (sttp4): @flsh86
- Scala (Pekko): @mickaelmagniez
- Scala (http4s): @JennyLeahy
- Swift: @tkqubo
- Swift 3: @hexelon
- Swift 4: @ehyche
- Swift 5: @4brunu
- Swift 6: @4brunu
- Swift Combine: @dydus0x14
- TypeScript (Angular1): @mhardorf
- TypeScript (Angular2): @roni-frantchi
- TypeScript (Angular6): @akehir
- TypeScript (Angular7): @topce
- TypeScript (Axios): @nicokoenig
- TypeScript (Fetch): @leonyu
- TypeScript (Inversify): @gualtierim
- TypeScript (jQuery): @bherila
- TypeScript (Nestjs): @vfrank66
- TypeScript (Node): @mhardorf
- TypeScript (Rxjs): @denyo
- TypeScript (redux-query): @petejohansonxo
- Xojo: @Topheee
- Zapier: @valmoz, @emajo
- Server Stubs
- Ada: @stcarrez
- C# ASP.NET 5: @jimschubert ❤️
- C# ASP.NET Core 3.0: @A-Joshi
- C# APS.NET Core 3.1: @phatcher
- C# Azure functions: @Abrhm7786
- C# NancyFX: @mstefaniuk
- C++ (Qt5 QHttpEngine): @etherealjoy
- C++ Pistache: @sebymiano
- C++ Restbed: @stkrwork
- Erlang Server: @galaxie @nelsonvides
- F# (Giraffe) Server: @nmfisher
- Go Server: @guohuang
- Go Server (refactored in 7.0.0): @lwj5
- Go (Echo) Server: @ph4r5h4d
- Go (Gin) Server: @kemokemo
- GraphQL Express Server: @renepardon
- Haskell Servant: @algas
- Haskell Yesod: @yotsuya
- Java Camel: @carnevalegiacomo
- Java MSF4J: @sanjeewa-malalgoda
- Java Spring Boot: @diyfr
- Java Undertow: @stevehu
- Java Play Framework: @JFCote
- Java PKMST: @anshu2185 @sanshuman @rkumar-pk @ninodpillai
- Java Vert.x: @lwlee2608
- Java Micronaut: @andriy-dmytruk
- Java Helidon: @spericas @tjquinno @tvallin
- Java WireMock: @acouvreur
- JAX-RS RestEasy: @chameleon82
- JAX-RS CXF: @hiveship
- JAX-RS CXF (CDI): @nickcmaynard
- JAX-RS RestEasy (JBoss EAP): @jfiala
- Julia: @tanmaykm
- Kotlin: @jimschubert ❤️
- Kotlin (Spring Boot): @dr4ke616
- Kotlin (Vertx): @Wooyme
- Kotlin (JAX-RS): @anttileppa
- Kotlin WireMock: @stefankoppier
- NodeJS Express: @YishTish
- PHP Flight: @daniel-sc
- PHP Laravel: @renepardon
- PHP Lumen: @abcsun
- PHP Mezzio (with Path Handler): @Articus
- PHP Slim: @jfastnacht
- PHP Slim4: @ybelenko
- PHP Symfony: @ksm2
- PHP Symfony6: @BenjaminHae
- Python FastAPI: @krjakbrjak
- Python AIOHTTP:
- Ruby on Rails 5: @zlx
- Rust (rust-server): @metaswitch
- Scala Akka: @Bouillie
- Scala Cask: @aaronp
- Scala Finch: @jimschubert ❤️
- Scala Lagom: @gmkumar2005
- Scala Play: @adigerber
- 文档
- AsciiDoc: @man-at-home
- HTML Doc 2: @jhitchcock
- Confluence Wiki: @jhitchcock
- PlantUML: @pburls
- 配置
- Apache2: @stkrwork
- k6: @mostafa
- 模式
- Avro: @sgadouar
- GraphQL: @wing328 ❤️
- Ktorm: @Luiz-Monad
- MySQL: @ybelenko
- Postman Collection: @gcatanese
- Protocol Buffer: @wing328
- WSDL: @adessoDpd
❤️ = Link to support the contributor directly
如何加入核心团队
Here are the requirements to become a core team member:
- rank within top 50 in https://github.com/openapitools/openapi-generator/graphs/contributors
- to contribute, here are some good starting points
- regular contributions to the project
- about 3 hours per week
- for contribution, it can be addressing issues, reviewing PRs submitted by others, submitting PR to fix bugs or make enhancements, etc
- must be active in the past 3 months at the time of application
To join the core team, please reach out to [email protected] for more information.
To become a Template Creator, simply submit a PR for new API client (eg Rust, Elixir) or server stub (eg Ruby Grape) generator.
6.2 - OpenAPI Generator Technical Committee
Members of the OpenAPI Generator technical committee shoulder the following responsibilities:
- Provides guidance and direction to other users
- Reviews pull requests and issues
- Improves the generator by making enhancements, fixing bugs or updating documentations
- Sets the technical direction of the generator
谁符合资格? Those who want to join must have at least 3 PRs merged into a generator. (Exceptions can be granted to template creators or contributors who have made a lot of code changes with less than 3 merged PRs)
If you want to join the committee, please kindly apply by sending an email to [email protected] with your Github ID.
Members of Technical Committee
Languages/Generators | Member (join date) |
---|
ActionScript | |
艾达 | @stcarrez (2018/02) @michelealbano (2018/02) |
安卓 | @jaz-ah (2017/09) |
顶点 | |
bash | @frol (2017/07) @bkryza (2017/08) @kenjones-cisco (2017/09) |
c | @zhemant (2018/11) @ityuhui (2019/12) @michelealbano (2020/03) |
C ++ | @ravinikam (2017/07) @stkrwork (2017/07) @etherealjoy (2018/02) @martindelille (2018/03) @muttleyxd (2019/08) |
C# | @mandrean (2017/08) @shibayan (2020/02) @Blackclaws (2021/03) @lucamazzanti (2021/05) @iBicha (2023/07) |
克洛杰尔 | |
水晶 | @cyangle (2021/01) |
镖 | @jaumard (2018/09) @josh-burton (2019/12) @amondnet (2019/12) @sbu-WBT (2020/12) @kuhnroyal (2020/12) @agilob (2020/12) @ahmednfwela (2021/08) |
艾菲尔 | @jvelilla (2017/09) |
长生不老药 | @mrmstn (2018/12) |
榆树 | @eriktim (2018/09) |
Erlang | @tsloughter (2017/11) @jfacorro (2018/10) @robertoaloi (2018/10) @nelsonvides (2024/09) |
F# | @nmfisher (2019/05) |
去 | @antihax (2017/11) @grokify (2018/07) @kemokemo (2018/09) @jirikuncar (2021/01) @ph4r5h4d (2021/04) @lwj5 (2023/04) |
GraphQl | @renepardon (2018/12) |
Groovy | |
哈斯克尔 | |
爪哇 | @bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) @lwlee2608 (2019/10) @martin-mfg (2023/08) |
Java Spring | @cachescrubber (2022/02) @welshm (2022/02) @MelleD (2022/02) @atextor (2022/02) @manedev79 (2022/02) @javisst (2022/02) @borsch (2022/02) @banlevente (2022/02) @Zomzog (2022/09) @martin-mfg (2023/08) |
JMeter | @kannkyo (2021/01) |
Jetbrains HTTP Client | @jlengrand (2023/01) |
朱莉娅 | @tanmaykm (2023/01) |
科特林 | @dr4ke616 (2018/08) @karismann (2019/03) @Zomzog (2019/04) @andrewemery (2019/10) @4brunu (2019/11) @yutaka0m (2020/03) @stefankoppier (2022/06) @e5l (2024/10) |
卢阿 | @daurnimator (2017/08) |
N4JS | @mmews-n4 (2023/03) |
尼姆 | |
nodejs/javaScript | @CodeNinjai (2017/07) @frol (2017/07) @cliffano (2017/07) |
OBJC | |
OCAML | @cgensoul (2019/08) |
珀尔 | @wing328 (2017/07) ❤️ @yue9944882 (2019/06) |
php | @jebentier (2017/07), @dkarlovi (2017/07), @mandrean (2017/08), @jfastnacht (2017/09), @ybelenko (2018/07), @renepardon (2018/12) |
Powershell | @wing328 (2020/05) |
Python | @cbornet (2017/09) @tomplus (2018/10) @krjakbrjak (2023/02) @fa0311 (2023/10) @multani (2023/10) |
r | @Ramanth (2019/07) @saigiridhar21 (2019/07) |
红宝石 | @cliffano (2017/07) @zlx (2017/09) @autopp (2019/02) |
锈 | @frol (2017/07) @farcaller (2017/08) @richardwhiuk (2019/07) @paladinzh (2020/05) @jacob-pro (2022/10) |
Scala | @clasnake (2017/07), @shijinkui (2018/01), @ramzimaalej (2018/03), @chameleon82 (2020/03), @Bouillie (2020/04) @fish86 (2023/06) |
迅速 | @jgavris (2017/07) @ehyche (2017/08) @Edubits (2017/09) @jaz-ah (2017/09) @4brunu (2019/11) @dydus0x14 (2023/06) |
打字稿 | @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @topce (2018/10) @akehir (2019/07) @petejohansonxo (2019/11) @amakhrov (2020/02) @davidgamero (2022/03) @mkusaka (2022/04) @joscha (2024/10) |
Xojo | @Topheee (2023/04) |
Past Members of Technical Committee:
Languages/Generators | Member (join date) |
---|
Python | @taxpon (2017/07) @frol (2017/07) @mbohlool (2017/07) @cbornet (2017/09) @kenjones-cisco (2017/11) @tomplus (2018/10) @arun-nalla (2019/11) |
❤️ = Link to support the contributor directly
6.3 - History of OpenAPI Generator
OpenAPI Generator is a fork of Swagger Codegen. In view of the issues with the Swagger Codegen 3.0.0 (beta) release and the disagreement on the project's direction, more than 40 top contributors and template creators of Swagger Codegen decided to fork Swagger Codegen and maintain a community-driven version called "OpenAPI发电机”。 Please refer to the Q&A for more information.
Founding Members (alphabetical order):
- Akihito Nakano
- Artem Ocheredko
- Arthur Mogliev
- Bartek Kryza
- Ben Wells
- Benjamin Gill
- Christophe Bornet
- Cliffano Subagio
- Daiki Matsudate
- 丹尼尔
- Emiliano Bonassi
- Erik Timmers
- Esteban Gehring
- Gustavo Paz
- Javier Velilla
- Jean-François Côté
- Jim Schubert
- Jon Schoning
- Jérémie Bresson ❤️
- Jörn Ahrens
- Keni Steward
- Marcin Stefaniuk
- Martin Delille
- Masahiro Yamauchi
- Michele Albano
- Ramzi Maalej
- Ravindra Nikam
- Ricardo Cardona
- Sebastian Haas
- Sebastian Mandrean
- Sreenidhi Sreesha
- Stefan Krismann
- Stephane Carrez
- Takuro Wada
- Tomasz Prus
- Tristan Sloughter
- Victor Orlovsky
- Victor Trakhtenberg
- Vlad Frolov
- Vladimir Pouzanov
- William Cheng
- Xin Meng ❤️
- Xu Hui Hui
- antihax
- beatcracker
- daurnimator
- etherealjoy
- jfiala
- lukoyanov
❤️ = Link to support the contributor directly
7 - License
Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) Copyright 2018 SmartBear Software
根据Apache许可证(版本2.0(“许可”)获得许可;除了符合许可外,您不得使用此文件。 You may obtain a copy of the License at apache.org/licenses/LICENSE-2.0
除非适用法律要求或以书面形式同意,否则根据许可证分配的软件是按照“原样”分发的,没有任何明示或暗示的任何形式的保证或条件。请参阅许可证的许可,以获取许可条款中的权限和限制。