このプロジェクトについて
Insomniaは、GraphQL、REST、WebSockets、Server-Sent Events (SSE)、gRPC、およびその他のHTTP互換プロトコルをカバーするオープンソースのクロスプラットフォーム・デスクトップAPIクライアントです。Mac、Windows、Linux向けに配布されており、Apache-2.0ライセンスの下で、KongによってGitHub上でオープンに開発されています。
READMEに記載されている機能は以下の通りです:
- 一般的なプロトコルとフォーマットを使用したAPIのデバッグ。
- ネイティブのOpenAPIエディタとビジュアルプレビューによるAPI設計。
- ネイティブのテストスイートとコレクションランナーによるAPIテスト。
- クラウドまたはセルフホストのモッキングサーバーを通じたAPIのモック化。
- ネイティブのInsomnia CLI (Inso) を使用した、リンティングおよびテストのためのCI/CDパイプラインの構築。
- 製品のコラボレーション機能を通じた連携。
- サードパーティ製プラグインによるクライアントの拡張。
ストレージオプション。プロジェクト、コレクション、設計仕様などのリソースは異なるバックエンドに保存でき、READMEによるとこれらをプロジェクトごとに組み合わせることが可能です:
- Local Vault:100%ローカルなストレージ。
- Git Sync:クラウドを経由せず、任意のサードパーティ製Gitリポジトリを使用。
- Cloud Sync:クラウドでのコラボレーション用。オプションでエンドツーエンド暗号化 (E2EE) が可能。
Private Environments機能により、プロジェクトに選択したストレージバックエンドに関わらず、環境設定をローカルに保存できます。
アカウントとプラン。Insomniaは、ローカルのScratch Padを使用してアカウントなしで利用可能です。その他のほとんどの機能にはアカウントが必要であり、READMEでは、これが無料で提供されるオープンソース版の開発を維持する方法であると説明されています。無料プランは寛容であるとされており、プレミアムプランでは、無制限のコラボレーション、Git Sync、組織の作成、およびサードパーティのアイデンティティプロバイダーログイン (SAML, OIDC) が追加されます。APIデータをローカルまたはGitにのみ保存することは、アカウントの有無に関わらず可能です。
開発。リポジトリはNode.jsのモノレポです。貢献にはNode.jsとGitが必要で、適切なNodeバージョンは.nvmrcに記載されています。ルートレベルの一般的なコマンドには、npm i, npm run lint, npm run type-check, npm test, npm run dev (ライブリロード), および npm run dev:autoRestart (レンダラーのライブリロードとメインプロセスの自動再起動) が含まれます。Linuxユーザーは、Ubuntu/Debianではlibfontconfig-dev、Fedoraではlibcurl-develなどのサポートパッケージが必要な場合があり、インストールに失敗した場合はキャッシュされたElectronインストールをクリアする必要があるかもしれません。Inso CLIには独自のワークフローがあり、npm i、npm run inso-startでウォッチモードでコンパイルし、その後 ./packages/insomnia-inso/bin/inso -v を実行します。
エコシステムとコミュニティ。プラグインはInsomnia Plugin Hubから検索してインストールできます。READMEでは、Insomnia Documenter (APIドキュメントページの生成)、GitHub REST API仕様インポーター、Swaggymnia (既存APIのSwaggerドキュメント生成) などのコミュニティプロジェクトが紹介されています。バグ報告や機能リクエストは、ガイドラインを確認した上でGitHubのイシュートラッカーを通じて行い、製品に関する一般的な質問はプロジェクトのSlackコミュニティで処理されます。公式ドキュメントは docs.insomnia.rest にあります。
READMEによる特記事項:ほとんどの機能にアカウントが必要であること、およびコラボレーションとGit Syncのためのオプションの有料プランがあることです。ソースコード自体はApache-2.0ライセンスです。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.