パッケージ
クライアントが Prodantix と通信するために必要なものは、各言語のレジストリからインストールできるパッケージとして提供されます。いずれもオープンソースで、まとめてバージョン付けされ、本マニュアルの他の章が説明するのと同じ REST およびリアルタイム面を利用します。
どれが必要か
測定したい内容ではなく、コードが動く場所で選んでください。どのクライアントも同じイベントを送り、同じフラグを評価し、同じアプリ内受信箱を読みます。
| Package | Registry | Where it runs |
|---|---|---|
| @prodantix/sdk | npm | Browsers, Node, and edge runtimes |
| prodantix_sdk | pub.dev | Flutter and Dart apps |
| prodantix-sdk | PyPI | Python backends |
| @prodantix/react | npm | React apps, over @prodantix/sdk |
| prodantix_sdk_flutter | pub.dev | Flutter apps, over prodantix_sdk |
クライアントとアダプター
実際の処理は三つのクライアントが行い、二つのアダプターがそのうち一つをフレームワーク向けに包みます。アダプターは独自の機能を足しません。フレームワークが課すライフサイクルを引き受け、その下のクライアントを渡すだけです。
バージョンと同等性
パッケージはまとめてバージョン付けされるため、同じバージョン番号はどの言語でも同じ面を意味します。メソッド名はクライアント間で一致しますが、サーバークライアントは呼び出しごとにユーザー id を受け取ります。
フラグの振り分けは一つのゴールデンベクターファイルで固定されており、サーバーと三つのクライアントすべてがそれに対してテストします。したがって判定がどこで走っても、ユーザーは同じ側に入ります。
何を話すか
どのクライアントも REST を話します。TypeScript SDK はさらにウェブソケットを開き、メッセンジャーはその上で動きます。MCP は外部エージェント向けのサーバー面であり、クライアントのパッケージは一つも話しません。