Laravel Nimble
A complete Laravel interface to the Nimble Streamer native management API.
Installation
composer require alexhackney/lara-nimble
php artisan vendor:publish --tag=nimble-config
Why it exists
Nimble Streamer exposes a native management API that covers live stream inspection, republishing, DVR, sessions, and protocol statistics. Talking to it directly means hand-rolling HTTP calls and parsing untyped responses in every project that needs it.
This package maps every service 1:1 to a documented Nimble endpoint. Nothing is invented, every request and response shape is covered by tests, and the whole surface is available through readonly DTOs with strict types.
What it does
Live streams
Inspect currently publishing streams including bandwidth, resolution, codecs, and publisher.
RTMP republishing
Create, list, delete, and monitor republish rules for YouTube, Facebook, Twitch, and anywhere else.
Restream reconciler
sync() converges the server onto your desired rule set, built specifically for Nimble's non-persistent API rules.
DVR and sessions
Archive status, MP4 export, reload and cleanup, plus listing and terminating active client sessions.
Protocol insights
RTMP settings, MPEG-TS status, SRT and RIST statistics, NDI listing, and Icecast metadata injection.
SCTE-35 and testing
Insert cue-out, cue-in, and time_signal ad markers via Nimble Advertizer. Nimble::fake() records requests and provides assertions.
Requirements
- ›PHP 8.3, 8.4, or 8.5
- ›Laravel 12 or 13
- ›Nimble Streamer with the management API enabled