
Fern
Fern は、API 定義を数分で本番環境対応の SDK と美しいドキュメントに変換するツールキットであり、複数の言語と API 仕様をサポートしながら、エンタープライズレベルの機能を提供します。
https://buildwithfern.com/?ref=producthunt&utm_source=aipure

製品情報
更新日:2025年09月30日
Fernとは
Fern は、Y Combinator が支援する (W23) 2022 年に設立された開発者ツール会社で、企業が高品質の SDK と API ドキュメントを提供できるよう支援しています。API ファースト開発のための包括的なプラットフォームとして機能し、チームは単一の信頼できるソースからクライアントライブラリ、API ドキュメント、およびサーバーのボイラープレートを生成および維持できます。このプラットフォームは、OpenAPI、AsyncAPI、Protobuf (gRPC)、OpenRPC などの主要な API 仕様と完全に互換性があり、独自のよりシンプルな Fern 定義形式も提供しています。
Fernの主な機能
Fernは、API定義を本番環境対応のSDKやインタラクティブなドキュメントに変換する包括的なAPI開発プラットフォームです。複数のAPI仕様フォーマット(OpenAPI、AsyncAPI、gRPCなど)をサポートし、様々なプログラミング言語(TypeScript、Python、Java、Go、Ruby、PHP、C#)で型安全なSDKを生成し、美しくインタラクティブなAPIドキュメントを作成します。このプラットフォームには、自動SDKアップデート、OAuth 2.0サポート、サーバー送信イベント、エンタープライズレベルの移行サポートなどの機能が含まれています。
多言語SDK生成: OAuth 2.0、ページネーション、型安全性などの組み込み機能を備えた、複数のプログラミング言語で慣用的なSDKを自動的に生成および公開します
インタラクティブドキュメント: AI搭載の検索、コンテンツ移行ツール、APIキーインジェクションなどの機能を備えた、美しくインタラクティブなAPIドキュメントを作成します
CI/CD統合: APIの変更が発生したときに、更新されたSDKを自動的に生成および公開するために、CI/CDパイプラインとシームレスに統合します
エンタープライズサポート: エンタープライズクライアント向けに、専用の移行サポート、カスタムテーマ、およびセキュリティコンプライアンス機能を提供します
Fernのユースケース
APIファースト開発: チームはAPI仕様の単一の信頼できるソースを維持し、一貫性のあるSDKとドキュメントを自動的に生成できます
レガシーAPIの移行: 企業は、プロフェッショナルな移行サポートと改善された開発者エクスペリエンスにより、既存のAPIを最新化できます
マルチプロトコルAPIサポート: 組織は、統合されたSDK生成により、複数のプロトコル(REST、gRPC、WebSocket)を使用する複雑なAPIを処理できます
メリット
開発者が代替手段よりも好む、高品質で言語に特有のSDKを生成します
包括的なエンタープライズサポートと移行支援を提供します
既存の開発ワークフローおよびCI/CDパイプラインとのシームレスな統合を提供します
デメリット
高度な機能を使用するには、ProまたはEnterpriseプランへのサブスクリプションが必要になる場合があります
SDK生成およびドキュメントホスティングのための外部サービスへの依存
Fernの使い方
Fern CLI のインストール: npm を使用して Fern CLI ツールをインストールします。Node 18+ が必要です。実行: npm install -g fern-api
API 仕様のインポート: 既存の API 仕様から開始します。OpenAPI、AsyncAPI、OpenRPC、gRPC、または Fern 定義形式を使用して新しい仕様を作成できます。
Fern プロジェクトの初期化: 新しい Fern プロジェクトを作成します。これにより、fern/ フォルダが生成されます。このフォルダには、fern.config.json (ルート構成)、generators.yml (ジェネレーター設定)、および API 仕様の definition/ フォルダが含まれます。
ドキュメント設定の構成: fern フォルダ内の docs.yml ファイルをドキュメント設定と組織の詳細で更新します。
SDK 言語の選択: SDK を生成するプログラミング言語を選択します。Fern は、TypeScript、Python、Go、Java、Ruby、C#、PHP をサポートしています。
SDK とドキュメントの生成: 'fern generate' コマンドを実行して、SDK とドキュメントを作成します。ドキュメントのみの場合は --docs フラグを使用し、変更をプレビューする場合は --preview を使用します。
パッケージの公開: Fern は、生成された SDK パッケージを適切なレジストリ (npm、PyPI、Maven など) に自動的にバージョン管理して公開します。
CI/CD との統合: API が変更されたときに SDK とドキュメントを自動的に更新するために、Fern 生成コマンドを CI/CD パイプラインに追加します。
プレビューとデプロイ: 'fern docs dev' を使用して、ポート 3000 でドキュメントをローカルでプレビューします。準備ができたら、変更を本番環境にデプロイします。
Fernのよくある質問
Fernは、SDKを生成するための入力仕様として、OpenAPI、AsyncAPI、OpenRPC、gRPC、および独自のよりシンプルなFern定義形式をサポートしています。