h3ravel/framework
Feat: Add broadcasting subsystem (drivers + channel auth)
Ouverte
#24 ouverte le 25 sept. 2025
@h3ravel/broadcastenhancementhelp wantedmediumonlydust-wavereal-time
Métriques du dépôt
- Stars
- (22 étoiles)
- Métriques de merge PR
- (Métriques PR en attente)
Description
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