rawand201/filament-connection-badge
A drop-in connection status badge for Filament panels: a signal-bars icon in the topbar, a live ping graph on hover, and a full-screen overlay when the connection drops. Supports Filament v4 and v5, RTL, dark mode, permissions, and custom render hooks.
permission config is a Gate ability evaluated at render time, so the badge can be surfaced to support/super-admin roles only and hidden from customers. That is a product lever, not just a security one — decide deliberately whether end users should see your infrastructure's health.Adopt when:
web middleware by default, so route.middleware => auth (or Filament's Authenticate), route.throttle, and the permission Gate belong in the same commit, not a follow-up ticket.php artisan filament:assets — including after every composer update. If that will silently break styling, add it to your deploy checklist first.Look elsewhere (or vendor it) when:
Risk note to weigh: the publicly reachable heartbeat is the one thing I would not ship without configuration. It is a low-severity surface (a JSON {ok:true} and a 403 path), but it is an unauthenticated route into your PHP stack that an attacker can poll. Throttling and auth middleware are config, not defaults. That is fixable in ten minutes and should be treated as mandatory.
To executives: A small, free, MIT-licensed add-on for our admin panel that shows each user a live connection-quality indicator and a clear "you're offline" screen. The business case is support load: it kills the "the system is down" ticket that turns out to be someone's Wi-Fi, and it gives us real latency data from actual users before we invest in realtime features. Cost is one engineer for roughly half a day including security hardening. Risk is that it is a young, single-maintainer open-source package — mitigated by pinning the version and owning the fork if needed.
To engineering: Drop-in Filament v4/v5 topbar badge — an Alpine component polling a package-registered JSON heartbeat route through Laravel's router and middleware, so it measures your app, not nginx serving a static file. Rolling sparkline, avg/last ping, packet loss, offline overlay, theme-token colors, RTL-safe, en/ar/ckb translations. Zero build step; assets publish via filament:assets and must be republished on deploy. Quality signals are good for a v1: PHPStan level 6, Pest, CI, pinned Actions, SECURITY.md. Two things we do before it touches production: lock the heartbeat route behind auth middleware plus throttle, and gate the badge with a permission ability so it is scoped by role rather than globally on. Add a smoke test on the ping route to CI. Then pilot on the internal panel for a week and read the ping distribution — that number informs the realtime roadmap.
How can I help you explore Laravel packages today?