Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Cron Expression Laravel Package

dragonmantank/cron-expression

Parse and evaluate PHP cron expressions with advanced features like ranges, intervals, weekdays (W), last days (L), and nth occurrences (#). Easily check if a cron job is due, calculate next/previous run dates, and skip multiple matches. Supports complex expressions like */12, 2-59/3, and @daily—ide...

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs Buy: Strongly favors "buy" – building a cron parser from scratch would require months of effort to handle edge cases (timezones, DST, complex expressions like LW, #, and W), while this package is battle-tested by Laravel and 10+ other major projects. Maintenance burden shifts to the community.
  • Feature Enablement: Directly supports dynamic scheduling features like user-defined cron jobs in admin panels, automated report generation (e.g., "send weekly reports every last Friday"), and cloud-native task scheduling without system cron dependencies.
  • Roadmap Alignment: Critical for products requiring precise time-based triggers (e.g., marketing campaigns, financial reconciliations, or data pipelines). The package’s recent PHP 8.2+ support and active maintenance ensure compatibility with modern infrastructure.
  • Use Cases: Ideal for SaaS platforms needing "schedule-as-code" capabilities, internal tools with recurring tasks, or any PHP application requiring reliable date calculations for complex cron patterns (e.g., 0 0 1W * * for "first business day of month").

When to Consider This Package

  • Adopt when:
    • Your stack uses PHP 8.2+ (required for latest version) and you need precise cron parsing for scheduling logic.
    • You’re building a Laravel/Symfony app (it’s already a Laravel dependency) or need a framework-agnostic solution for complex schedules.
    • Your use cases involve special characters (W, L, #), timezones, or multi-field expressions (e.g., "every 3rd Thursday of the month").
  • Look elsewhere when:
    • You need a full job scheduler (e.g., retries, distributed execution) – use Crunz or orisai/scheduler instead (they use this
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport
twbs/bootstrap4
php-http/client-implementation
phpcr/phpcr-implementation
cucumber/gherkin-monorepo
haydenpierce/class-finder
psr/simple-cache-implementation
uri-template/tests