rikudou/cron-bundle
A lightweight Symfony bundle for defining and managing cron jobs in PHP. Register scheduled tasks as services, trigger them from a single system cron entry, and keep recurring application jobs like cleanup, sync, and notifications organized and easy to maintain.
First, the framing correction that gates everything else: rikudou/cron-bundle is a Symfony 6 bundle, not a Laravel package. It has no service provider, no publishable config, and no Schedule integration. For a Laravel roadmap it is a design reference, not a dependency. That single fact should be stated up front in any decision doc, because it changes the decision from "adopt or not" to "read or ignore."
With that caveat, the package informs these product decisions:
app/Console/Kernel.php or routes/console.php. This bundle is a clean, small example of that pattern: persist the job definition in configuration, evaluate every minute, dispatch only what's due. It is a blueprint, not a component.dragonmantank/cron-expression — which Laravel already pulls in transitively via Illuminate\Console\Scheduling. If no, close the ticket and cite this evaluation. Either way, the decision is now made cheaply.Recommendation: Do not add it as a dependency. Spend 30–60 minutes reading src/ as a pattern reference, then build internally on dragonmantank/cron-expression, which is already installed and has a real maintenance and CVE-response path.
Consider it only when all of the following hold:
Look elsewhere — or build — when any of these are true:
dragonmantank/cron-expression directly (already present via the scheduler), or spatie/laravel-schedule-monitor if you need visibility. This package offers Laravel nothing that isn't already in the framework.symfony/scheduler component covers recurring messages and is core-team maintained. A third-party bundle is strictly worse on supportability.withoutOverlapping semantics are out of scope and would be rebuilt by us anyway.For executives (two sentences): We evaluated a small open-source library for letting customers schedule their own recurring jobs. It is a Symfony-only component with three GitHub stars, no downstream users, and a single maintainer, so we are not adopting it — we will spend roughly one sprint building the equivalent on top of a library we already ship, which removes the abandonment and upgrade risk at a fraction of the long-term cost.
For engineering (the ask): Don't take the dependency. Read RikudouCronBundle for the pattern — a persisted cron expression plus a per-minute schedule:run-style command that filters to due jobs — then implement it in-house against dragonmantank/cron-expression. Scoping notes:
symfony/lock or Laravel's onOneServer() when we actually need them.dragonmantank/cron-expression is already installed.For the record: log this package as evaluated and not adopted, with the reason "framework mismatch + no supportability signal," so the next person doesn't re-run this analysis.
How can I help you explore Laravel packages today?