Swagger-UIとMSWではなくSDKを使おう
(dev.to)Swagger.jsonファイルから TypeScript SDK とモックシミュレーターを生成するツール
ここでいう SDK(Software Development Kit)には、次の機能が含まれる
- fetch関数のコレクション
- DTO構造体
- モックシミュレーター
SDKをビルドして利用すると、フロントエンド(クライアント)開発者がSwaggerドキュメントを読みながらfetch関数やDTO型を書き写すよりも、はるかに簡単で安全であり、さらにMSWでバックエンドサーバーをモックする作業も自動化されるため、生産性が向上する。
6件のコメント
良い記事と、面白いアプローチをありがとうございます。これは私個人の好みかもしれませんが、本文の該当パートに「こういうコードを入れると、従来はこうなっていたものが、こうなる」といった形の例があれば、より良かったと思います。今の本文は、ほとんど目に入ってきません。
TypeScriptのエコシステムでは、ドキュメントを見て関連する型や関数を手作業で定義するのが一般的なのでしょうか?
関連して、TypeScriptの型をベースにOpenAPI Specを自動生成してくれるTspecというライブラリがあります(笑)
https://github.com/ts-spec/tspec
TSでは、openapi-generatorが生成するコードは実用に耐えません
どうやら、この記事を投稿された samchon さんご自身が作られたツールの使い方のようなので、それなら Show GN のほうに行くべきなのではないかという気もします。
いずれにせよ、
swagger.jsonファイルを使って TypeScript クライアントで自動補完を効かせるようにするのは、良いアイデアだと思います。ひょっとして NestJS ではない別のバックエンドスタックでも使えるのでしょうか?言語やフレームワークを問わず、OpenAPI v3.0仕様の
swagger.jsonさえビルドできれば大丈夫です。以前にもこのブログ記事を show GN を付けて投稿したことがありますが、そのときは管理者の方から、show GN は GitHub やプロジェクトのリンクだけを投稿する場所だと言われ、一般記事のほうへ移動していただきました。