What is Skyline for Laravel?
+
Skyline is a commercial fork of Laravel Horizon, maintained by Boring Observability. It keeps everything Horizon does for monitoring Redis queues and adds the operations layer Horizon leaves out: weighted queues, pausing a single queue, running a scheduled or retrying job immediately, reading and searching the jobs inside a queue, deleting them, and a metrics dashboard that aggregates instead of drawing one chart per job class.
Is Skyline for Laravel a drop-in replacement for Laravel Horizon?
+
Yes. Skyline keeps the Laravel\Horizon\ namespace and "replaces" laravel/horizon in Composer, so your existing config/horizon.php, service-provider customizations, gate definitions and Artisan commands all keep working. The dashboard still mounts at /horizon. There are no code changes and no migrations.
Will Skyline keep up with Laravel Horizon?
+
Yes. Skyline is a rebased fork, not a divergent one: main is always a recent upstream Horizon tag with the Skyline commits replayed on top, and every upstream release is merged within 14 days. So you get new Horizon versions, bug fixes and Laravel compatibility updates without being stranded on an old base. We run Skyline against our own production queues every day, which is why keeping current is part of how we operate rather than an afterthought.
How is Skyline different from Laravel Nightwatch or an APM?
+
Skyline is queue control, not telemetry. An APM tells you something is wrong. Skyline is the layer that lets you do something about it: pause the queue, run the retry now, drain the backlog. Pair it with whatever you already use for observability. Nothing overlaps and nothing has to be replaced.
Is Skyline safe to run in production, and what data leaves my servers?
+
None of it. Skyline is a package that runs inside your application against your own Redis, exactly like Horizon: no agent, no external service, no telemetry. Your job payloads and queue metrics never leave your infrastructure. The license key is used only by Composer when installing or updating the package, so there is no runtime license check that could phone home or interrupt job processing. Dashboard access is governed by your existing viewHorizon gate.
How is Skyline licensed and priced, and what happens after twelve months?
+
Skyline is a one-time purchase of $99, on sale now at that launch price instead of $139. One license covers every application your team runs it on, with no per-app fee and no seat count. The purchase includes twelve months of upgrades: every Skyline release and every upstream Horizon merge published in that year. When the twelve months end nothing stops working. Every version you received stays yours, keeps running, and can still be pulled from the private registry when you rebuild. There is no runtime license check, so an expired upgrade window is a build-time consideration at worst and never a production one. The only thing you lose is access to releases published after your year, until you renew. Renewing is optional and buys the next twelve months at the rate you bought at. The source is MIT; what you are buying is registry access and the maintenance behind it.
What if Skyline is not a fit? Do you offer a refund?
+
Yes. Every purchase comes with a 30-day money-back guarantee. Email tech@boring-observability.dev within 30 days of being charged and we refund it in full, no questions asked and no call to sit through. Rolling back to Horizon is a single Composer command with no migration to unwind, so trying Skyline costs you a deploy either way.
What support do I get when I buy Skyline?
+
Email support at tech@boring-observability.dev, straight to the people who build and run Skyline. There is no support tier and no ticket queue in between. We aim to reply within one business day, and security reports are triaged the same day.
How do I install Skyline, and can I switch back to Horizon?
+
Authenticate Composer with your license key, add the laravel-skyline.composer.sh registry to composer.json, then run composer require boring-o11y/laravel-skyline, php artisan horizon:install and php artisan horizon. Switching back is composer remove boring-o11y/laravel-skyline followed by composer require laravel/horizon. Skyline stores its extra tracking data under the same Redis prefix and adds no schema, so there is no migration to unwind and nothing to export.
What are weighted queues?
+
In a supervisor running with balance => false, workers serve queues in strict left-to-right priority: the first queue is drained completely before the second is looked at. That works until the first queue is never empty, at which point everything below it starves. A queueWeights map replaces that with a proportional draw. On every poll the worker builds a fresh ordering, drawing queues without replacement with probability proportional to their weight, so at 3:2:1 the high queue is checked first about 50% of the time, default about 33% and low about 17%. Queues without an entry default to a weight of 1.
Does Skyline work with non-Redis queue drivers?
+
Skyline monitors Redis queues, just like Horizon. Features that rely on Redis list semantics do not apply to the sync or database drivers.