h3ravel/framework

Feat: Add broadcasting subsystem (drivers + channel auth)

オープン

#24 opened on 2025/09/25

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)TypeScript (14 件のフォーク)auto 404
@h3ravel/broadcastenhancementhelp wantedmediumonlydust-wavereal-time

Repository metrics

Stars
 (22 個のスター)
PR merge metrics
 (PR metrics pending)

説明

Background: Real-time features need an abstracted broadcast layer supporting multiple drivers (Pusher, Redis, WebSocket, log), plus channel authorization.

Tasks:

  • Create a @h3ravel/broadcast package in the framework/packages directory.
  • Define BroadcastManager and driver contract.
  • Implement at least two drivers (e.g., log and redis or a simple in-process WS).
  • Implement channel auth middleware for private/guarded channels.
  • Provide event interface (shouldBroadcast, broadcastOn channels).
  • Add integration tests for broadcasting events and auth checks.
  • Document configuration and examples.

Acceptance criteria:

  • App can broadcast events via chosen driver.
  • Private channel authorization flow works (authenticated user allowed/denied).
  • Interface mirrors laravel as much as possible, creating the familiar DX while also adding it own unique twists and turns.
  • Tests cover driver behavior.

Difficulty: large

コントリビューターガイド