OpenFeature で Flagship のフィーチャーフラグを評価します。
OpenFeature ↗ は、フィーチャーフラグ向けインターフェースの CNCF 標準です。ベンダーに依存しない API を提供するため、評価コードを変えずにフラグプロバイダーを切り替えられます。
Flagship は、TypeScript、Python、Go 向けの公式 OpenFeature 互換 SDK を提供します。ソースコードは GitHub ↗ で公開しています。
| SDK | パッケージ | ランタイム | 評価モード |
|---|---|---|---|
| TypeScript | @cloudflare/flagship ↗ |
Workers、Node.js、ブラウザー | Workers バインディング、HTTP、ブラウザーのプリフェッチキャッシュ |
| Python | cloudflare-flagship ↗ |
Python サーバーアプリケーション | HTTP |
| Go | github.com/cloudflare/flagship/sdks/go ↗ |
Go サーバーアプリケーション | HTTP |
Flagship の SDK は言語ごとに分かれています。TypeScript SDK は、使う OpenFeature パッケージとランタイムの挙動が異なるため、サーバー側とブラウザーでセットアップガイドが分かれています。
- TypeScript Server SDK — Workers、Node.js、その他のサーバーサイド JavaScript ランタイム向けです。
- TypeScript Client SDK — 同期的な OpenFeature Web SDK 評価が必要なブラウザーアプリケーション向けです。
- Python SDK — Python サーバーアプリケーション向けです。
- Go SDK — Go サーバーアプリケーション向けです。
TypeScript のサーバー側利用:
npm i @cloudflare/flagship @openfeature/server-sdkyarn add @cloudflare/flagship @openfeature/server-sdkpnpm add @cloudflare/flagship @openfeature/server-sdkbun add @cloudflare/flagship @openfeature/server-sdkTypeScript のブラウザー利用:
npm i @cloudflare/flagship @openfeature/web-sdkyarn add @cloudflare/flagship @openfeature/web-sdkpnpm add @cloudflare/flagship @openfeature/web-sdkbun add @cloudflare/flagship @openfeature/web-sdkPython の場合:
uv add cloudflare-flagshipGo の場合:
go get github.com/cloudflare/flagship/sdks/go- Workers、Node.js、その他のサーバーサイドランタイム向けに server provider をセットアップします。
- ブラウザーアプリケーション向けに client provider をセットアップします。
- Python サーバーアプリケーション向けに Python SDK をセットアップします。
- Go サーバーアプリケーション向けに Go SDK をセットアップします。