ステータスの凡例
以下の各 SDK は XID プラットフォームサポートマトリクスに合わせた 2 つのステータスラベルのいずれかを持っています。どちらのラベルも本番対応の主張ではありません。
| 状態 | 意味 |
|---|---|
| 現在のパッケージ | XID リポジトリで保守される TypeScript パッケージ。ソース、テスト、ワークスペース配線を含みます。 |
| 実装済み・ローカル検証済み | ローカルツールチェーンでコンパイルし単体テストスイートを通過するネイティブ SDK。実際の本番 IdP に対するラウンドトリップは引き続き手動検証が必要です。 |
サーバーサイド SDK
Web 標準ランタイム(Cloudflare Workers、Node.js、Bun、Deno)は Web Crypto を介して @xid-kit/backend を共有します。その他の言語は各自のネイティブ SDK を使用します。すべて networkless JWT 検証、リクエスト認証、webhook 検証を行います。
| ランタイムまたは言語 | パッケージまたはディレクトリ | 状態 | 責任範囲 |
|---|---|---|---|
| Cloudflare Workers | @xid-kit/backend |
現在のパッケージ | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| Node.js | @xid-kit/backend |
現在のパッケージ | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| Bun | @xid-kit/backend |
現在のパッケージ | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| Deno | @xid-kit/backend |
現在のパッケージ | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| Go | sdk/go |
実装済み・ローカル検証済み | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| Java | sdk/java |
実装済み・ローカル検証済み | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| Rust | sdk/rust |
実装済み・ローカル検証済み | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| PHP | sdk/php |
実装済み・ローカル検証済み | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| Ruby | sdk/ruby |
実装済み・ローカル検証済み | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| Python | sdk/python |
実装済み・ローカル検証済み | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
| .NET | sdk/dotnet |
実装済み・ローカル検証済み | ネットワーク不要の JWT 検証、リクエスト認証、webhook 検証。 |
クライアント SDK:Web フレームワーク
| フレームワーク | パッケージまたはディレクトリ | 状態 | 責任範囲 |
|---|---|---|---|
| Vanilla JS / Web | @xid-kit/core |
現在のパッケージ | ブラウザークライアント、セッションストア、トークンキャッシュ、Management API ヘルパー。 |
| React | @xid-kit/react |
現在のパッケージ | プロバイダー、フック、コントロールコンポーネント、ユーザー UI、組織 UI。 |
| Next.js | @xid-kit/nextjs |
現在のパッケージ | ミドルウェア、App Router ヘルパー、Pages Router ヘルパー、React 再エクスポート。 |
| Vue | @xid-kit/vue |
現在のパッケージ | プロバイダー、フックまたはコンポーザブル、および事前構築済みのユーザー・組織コンポーネント。 |
| Nuxt | @xid-kit/nuxt |
現在のパッケージ | プロバイダー、フックまたはコンポーザブル、および事前構築済みのユーザー・組織コンポーネント。 |
| Svelte / SvelteKit | @xid-kit/svelte |
現在のパッケージ | プロバイダー、フックまたはコンポーザブル、および事前構築済みのユーザー・組織コンポーネント。 |
| Angular | @xid-kit/angular |
現在のパッケージ | プロバイダー、フックまたはコンポーザブル、および事前構築済みのユーザー・組織コンポーネント。 |
| Remix | @xid-kit/remix |
現在のパッケージ | プロバイダー、フックまたはコンポーザブル、および事前構築済みのユーザー・組織コンポーネント。 |
| Astro | @xid-kit/astro |
現在のパッケージ | プロバイダー、フックまたはコンポーザブル、および事前構築済みのユーザー・組織コンポーネント。 |
| SolidJS | @xid-kit/solid |
現在のパッケージ | プロバイダー、フックまたはコンポーザブル、および事前構築済みのユーザー・組織コンポーネント。 |
クライアント SDK:モバイル
| プラットフォーム | パッケージまたはディレクトリ | 状態 | 責任範囲 |
|---|---|---|---|
| React Native | @xid-kit/react-native |
現在のパッケージ | Hosted Auth リダイレクト、ディープリンクコールバック、PKCE S256、セキュアストレージアダプターコントラクト。 |
| Expo | @xid-kit/expo |
現在のパッケージ | Expo Router 統合、AuthSession、SecureStore アダプター。 |
| Flutter | sdk/flutter |
実装済み・ローカル検証済み | ホスト型リダイレクト、アプリリンクコールバック、セキュアストレージアダプター。 |
| iOS | sdk/ios |
実装済み・ローカル検証済み | ASWebAuthenticationSession、Keychain ストレージ、PKCE S256。 |
| Android | sdk/android |
実装済み・ローカル検証済み | Custom Tabs、App Links、Keystore バックアップストレージ、PKCE S256。 |
クライアント SDK:デスクトップ
| プラットフォーム | パッケージまたはディレクトリ | 状態 | 責任範囲 |
|---|---|---|---|
| macOS | sdk/macos |
実装済み・ローカル検証済み | ASWebAuthenticationSession、Keychain ストレージ、PKCE S256。 |
| Windows | sdk/windows |
実装済み・ローカル検証済み | WebView2 リダイレクト、DPAPI セキュアストレージ、PKCE S256。 |
| Linux | sdk/linux |
実装済み・ローカル検証済み | システムブラウザリダイレクト、Secret Service ストレージ、PKCE S256。 |
| Electron | @xid-kit/electron |
現在のパッケージ | メインとレンダラーのブリッジ、safeStorage、ループバックまたはカスタムスキームコールバック。 |
| Tauri | @xid-kit/tauri |
現在のパッケージ | Rust バックエンドブリッジ、OS キーチェーン、PKCE S256。 |
共有ネイティブコントラクト
- ネイティブパブリッククライアントは PKCE S256 付きの認可コードを使用します。Implicit flow とパスワードグラントはサポートされていません。
- リダイレクトコールバックは宣言済みアプリリンク、Universal Links、カスタムスキーム、またはプラットフォーム相当のコールバック URL です。
- ストレージアダプターはリフレッシュトークンまたはセッションキャッシュ値をプラットフォームのセキュアストレージに保持し、クライアントシークレットを保存しません。
- JS および TS ネイティブ SDK(React Native、Expo)は React プロバイダーとフックモデルを使用します:XidProvider、useSignIn、useSignOut。
- 他のネイティブ SDK(iOS、Android、Flutter、デスクトップ)は関数型の configure、signIn、handleRedirect API サーフェスを使用します。
パッケージガイド
各 SDK にはインストール手順、API テーブル、コピーペーストの例が記載された専用リファレンスページがあります。サイドバーの SDK パッケージグループにすべてのリファレンスページが一覧表示されています。最もよく使われる Web パッケージは:
- @xid-kit/core — ブラウザーセッション、トークン、Management API ヘルパー。
- @xid-kit/backend — ネットワーク不要の JWT 検証、リクエスト認証、webhook。
- @xid-kit/react — provider、hooks、コントロールコンポーネントおよび UI コンポーネント。
- @xid-kit/nextjs — middleware および App/Pages Router サーバーヘルパー。
- @xid-kit/react-native — Hosted Auth リダイレクト、PKCE S256、ネイティブアプリ向けセキュアトークンストレージ。