Warble — hosted realtime for Flarum. Installs + configures flarum/realtime to use the managed Warble websocket service with one key.
composer require linkrobins/flarum-warble
Then enable it in your forum's admin panel under Extensions.
Realtime for your Flarum forum, with no server to run. flarum-warble
makes flarum/realtime work anywhere — live discussions, typing indicators,
notifications — including shared hosting where a websocket server is
impossible. Out of the box it uses polling: each visitor's browser asks
your forum for updates every few seconds, so realtime needs nothing but the
forum itself. If you can run a websocket server, point Warble at it and get
instant delivery instead.
Warble is a thin companion to flarum/realtime — realtime does all the
work (live posts, typing, notifications); Warble decides how the events
travel:
websocket block to your
config.php pointing at any Pusher-protocol server you run — Laravel
Reverb or soketi both work — and Warble steps
aside apart from keeping typing names working (realtime 2.0.0-rc.6 only
sends them through its own bundled server; Warble restores them for
relays).The transport is chosen automatically and can be forced either way on the Warble settings page.
Expect polling to be a few seconds behind rather than instant, and to add a small request per visitor per interval — fine for small and mid-size communities, which is exactly who can't run socket servers. A busy forum should graduate to a websocket.
Realtime's own feature settings stay yours: typing indicators, discussion-list typing dots, list update interval, notification toast duration, and the "view who is typing" permission. We encourage you to open the Realtime settings page and tune those to fit your forum — Warble never touches them.
Leave the key blank to disconnect. Outgrow the managed service? No lock-in:
flarum/realtime ships its own websocket daemon (php flarum realtime:serve) —
disconnect Warble and run the stock daemon on your own server any time.
Requirement: your forum's
config.phpmust be writable by the web server (it is on a standard Flarum install). Warble writes the connection there because that's where flarum/realtime reads it — the change takes effect immediately, no restart. Ifconfig.phpis locked down, Warble tells you in the settings page.
That page means your forum is serving an outdated compiled assets build, one made before Warble was enabled, so the key field literally isn't in the JavaScript your browser receives. This happens on some shared hosts when Flarum's post-enable cache flush fails; reinstalling, purging, or clearing your browser cache won't fix it, because the stale build lives on the server.
Warble now repairs this by itself: it checks the served build on admin page loads and rebuilds it when it predates Warble. If it can't (or another extension's script crashes the page before Warble loads), a red banner appears at the bottom of the admin panel explaining exactly what's wrong in plain language, with a one-click fix where possible. No SSH needed. If the banner says the assets folder isn't writable, that part is for your hosting provider.
websocket in config.php.flarum/realtime's bundled daemon — also instant, no Warble involved:
run php flarum realtime:serve where you can keep a process alive.Forums connected to the retired hosted Warble service keep working unchanged:
their written config.php connection is just a websocket configuration like
any other.
MIT, free, and standalone — nothing here depends on any external service.