@h3ravel/broadcastenhancementhelp wantedmediumonlydust-wavereal-time
仓库指标
- 星标
- (22 个星标)
- PR 合并指标
- (PR 指标待抓取)
描述
Background: Real-time features need an abstracted broadcast layer supporting multiple drivers (Pusher, Redis, WebSocket, log), plus channel authorization.
Tasks:
- Create a
@h3ravel/broadcastpackage in the framework/packages directory. - Define
BroadcastManagerand driver contract. - Implement at least two drivers (e.g.,
logandredisor 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