Mermade/openapi-guiを使ってOpenAPI(Swagger)仕様書を作る
諸君、私はSwaggerが嫌いだ
yamlを直接書かせる仕様のOpenAPIことSwagger
すっかり業界標準になり腹立たしい限り。
それを回避するためにStoplightを導入したものの、
そちらが変な方向に行って断念。
代わりにinsomniaを使ってみたがもう一つという
奥歯に挟まったモヤシが取れない日々。
APIDOGやHoppscotch、ApiBldrなどクラウド製品を使うのは、
ちょっとセキュリティ的にNGが出るパターンもある。
(゜-゜) 詰んだな...
ある時、自身のブックマークをチェックしてて、
過去にブックマークしたけどスルーしたツールがあった。
それが
openapi-gui
令和4年4月で開発が止まっていて、
試さずに終わってたのだが、
最近見たらコミットが増えていた。
(調整事項ばっかりだけど)
一応メンテしてるんだなということで、
ちょっと触ってみよう。
ヾ(・ω<)ノ" 三三三● ⅱⅲ コロコロ♪
------------------- ↓ 本題はここから ↓-------------------
openapi-guiとは?
オープンソースのAPI開発ツール。
Docker上(Node)で動作し、
PostmanなどのAPIテストツールのUIでAPI仕様書を作成できる。
対応はOpenAPI3.0まで(3.1は非対応)
クラウドではなくローカルのDockerで動くので漏洩周りのセキュリティ的な心配はなさそう
開発のdocker-compose.ymlに加えておくのはありかもと考えている。
インストール
DockerHubにイメージがあるので、
ローカルでビルド。
git clone https://github.com/Mermade/openapi-gui.git
cd openapi-gui
docker build -t mermade/openapi-gui
実行
docker run --name openapi-gui -p 8080:3000 -d mermade/openapi-gui
(・ω・) 動いた
設計準備
最初はサンプルが乗ってる状態なので、
参考にYamlをダウンロードしておく。
「Export YAML」(またはJSON)よりDownloadボタンを押下
続いてデータをクリアして、
自身のAPI設計を開始する
「Upload」より「Remove All」を押下
API設計開始
「Main」を押下し、「Create Path」よりパスを登録していく
(´・ω・) 使えんじゃね?
設計ファイルが一枚という制限はあるものの、
基本的に必要な機能は載ってる気がする。
しばらく使ってみよう。
------------------- ↓ 後書きはここから ↓-------------------
この際マイナーツールでもいいや
停止
docker stop openapi-gui && docker rm openapi-gui
Discussion