cloudflare/partykit

PartyKit, for Workers

何を解決するか

PartyServer は、Cloudflare Workers と Durable Objects を使用してリアルタイムで共同作業可能なアプリケーションを構築するためのライブラリと例を提供します。WebSocket の管理、状態の同期、大規模な共同編集の複雑さを簡素化します。

仕組み

このプロジェクトは、いくつかの専門的なパッケージで構成されています:

  • PartyServer: Durable Objects を拡張し、WebSocket の管理、ブロードキャスト、ライフサイクルフックを簡素化するコアライブラリ。
  • PartySocket: クライアント側ライブラリで、WebSocket の再接続、バッファリング、耐障害性を処理します。
  • Y-PartyServer: Yjs(CRDT ライブラリ)を統合し、外部ストレージ用のフック付きでリアルタイム共同編集を可能にします。
  • partysub: 複数の Durable Object インスタンスおよびグローバルな場所にまたがるルームをスケーラブルに拡張するパブリッシュ/サブスクライブシステム。
  • partysync: Durable Object からクライアントへの状態同期を実験的に実現するツール。
  • partywhen: タスクのスケーラブルなスケジューリングを可能にするライブラリ。
  • hono-party: Hono フレームワーク用のミドルウェアで、PartyServer のリクエストを処理します。

対象ユーザー

Cloudflare Workers プラットフォーム上でリアルタイムアプリ、共同作業ツール、スケーラブルな WebSocket ベースのサービスを開発する開発者。

特徴

  • CRDT サポート: Yjs によるネイティブなサポートで、スムーズな共同編集が可能。
  • スケーラブルなパブリッシュ/サブスクライブ: 複数の Durable Object インスタンスにまたがるグローバルな負荷分散が可能。
  • 耐障害性のある接続: PartySocket によるクライアント側バッファリングと自動再接続。
  • Cloudflare ネイティブ: Cloudflare Workers と Durable Objects に特化して最適化されています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト