PHPackages                             tkachikov/chronos - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. tkachikov/chronos

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

tkachikov/chronos
=================

Settings commands for Laravel Scheduling

1.8.6(4mo ago)173.4k↓25%1[1 issues](https://github.com/tkachikov/chronos/issues)MITPHPPHP ^8.2CI passing

Since Feb 26Pushed 4mo ago2 watchersCompare

[ Source](https://github.com/tkachikov/chronos)[ Packagist](https://packagist.org/packages/tkachikov/chronos)[ RSS](/packages/tkachikov-chronos/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (8)Versions (51)Used By (0)

 [![Logo](https://github.com/tkachikov/chronos/raw/master/images/logo.png)](https://github.com/tkachikov/chronos/raw/master/images/logo.png)

 [![Packagist Version](https://camo.githubusercontent.com/667745e9eb2a4977ebff91e21948194d04e2ca5f576993d762d934846f1d943d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f746b616368696b6f762f6368726f6e6f732e737667)](https://packagist.org/packages/tkachikov/chronos) [![PHP from Packagist](https://camo.githubusercontent.com/852692936a5e493bf0e7ef76371a9de9f8b2f5a74cd152493067561a946d7af1/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f746b616368696b6f762f6368726f6e6f732e737667)](https://packagist.org/packages/tkachikov/chronos) [![Laravel 12.x](https://camo.githubusercontent.com/83a1e2e44b418575f57518cc3da718df8272156054f42ecf6bdbe1115eda0a48/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d31322e782d626c7565)](https://camo.githubusercontent.com/83a1e2e44b418575f57518cc3da718df8272156054f42ecf6bdbe1115eda0a48/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d31322e782d626c7565) [![Laravel 11.x](https://camo.githubusercontent.com/6bff819ff9d23839413acdd1111f380f12e23a83278d7d5a219e5cf129b3f50b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d31312e782d626c7565)](https://camo.githubusercontent.com/6bff819ff9d23839413acdd1111f380f12e23a83278d7d5a219e5cf129b3f50b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d31312e782d626c7565) [![Laravel 10.x](https://camo.githubusercontent.com/09e42a5f4aaaed852666a689f331ceb354a69a4285ab1ef43161b60503ef36fd/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d31302e782d626c7565)](https://camo.githubusercontent.com/09e42a5f4aaaed852666a689f331ceb354a69a4285ab1ef43161b60503ef36fd/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d31302e782d626c7565) [![Laravel 9.x](https://camo.githubusercontent.com/8f1840843c39f71eee11156242a86771cad45fa76c19ce90ebc00925486c921e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d392e782d626c7565)](https://camo.githubusercontent.com/8f1840843c39f71eee11156242a86771cad45fa76c19ce90ebc00925486c921e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d392e782d626c7565) [![License: MIT](https://camo.githubusercontent.com/08cef40a9105b6526ca22088bc514fbfdbc9aac1ddbf8d4e6c750e3a88a44dca/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d626c75652e737667)](https://opensource.org/licenses/MIT)

 [![GitHub stars](https://camo.githubusercontent.com/378707fc5f37d317bc65cf042b5587eb397f75de8f86d2ff03b20a2caaa21488/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f746b616368696b6f762f6368726f6e6f732e7376673f7374796c653d736f6369616c)](https://github.com/tkachikov/chronos/stargazers) [![GitHub issues](https://camo.githubusercontent.com/f0a8e773c66268407c0671177ed7ab8ee28cdd54cc772f8767afed8875ed2e29/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f746b616368696b6f762f6368726f6e6f732e737667)](https://github.com/tkachikov/chronos/issues) [![GitHub last commit](https://camo.githubusercontent.com/2555ebb43ded02662f69794d3eec17a73ff2003a8abc4bb6da6e723f893551d8/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6173742d636f6d6d69742f746b616368696b6f762f6368726f6e6f732e737667)](https://github.com/tkachikov/chronos/commits/main) [![Tests](https://github.com/tkachikov/chronos/actions/workflows/tests.yml/badge.svg)](https://github.com/tkachikov/chronos/actions/workflows/tests.yml)

This package for setting commands in schedule.

Installation
------------

[](#installation)

Require this package with composer using the following command

```
composer require tkachikov/chronos
```

Run Chronos command for install:

```
php artisan chronos:install
```

Authorization
-------------

[](#authorization)

In defaults pages open for all users and also without auth middleware.

For open setting pages for authenticated users need uncommented 'auth' middleware in config `chronos.php`:

```
return [
    'domain' => env('CHRONOS_DOMAIN'),

    'middlewares' => [
        'web',
        'auth',
        // 'Tkachikov\Chronos\Http\Middleware\Authorize',
    ],
];
```

For authorization in production uncommented Chronos auth in config `chronos.php` and set statements in `app/Providers/ChronosServiceProvider`:

```
return [
    'domain' => env('CHRONOS_DOMAIN'),

    'middlewares' => [
        'web',
        'auth',
        'Tkachikov\Chronos\Http\Middleware\Authorize',
    ],
];
```

```
// ...
class ChronosServiceProvider extends ChronosApplicationServiceProvider
{
    // ...
    protected function gate(): void
    {
        Gate::define('viewChronos', function ($user) {
            return $user->hasRole('admin');
        });
    }
}
```

Usage
-----

[](#usage)

Visit route `/chronos`, example: [localhost:8000/chronos](http://localhost:8000/chronos)

### For testing

[](#for-testing)

Open `chronos:test` command: [![Open test](images/open_test.png)](images/open_test.png)

Run `chronos:test` command from queue and reload page: [![Run test](images/run_test.png)](images/run_test.png)

Run `chronos:test` command in real time. Out messages pushing in custom terminal: [![Run test](images/run_in_real_time.png)](images/run_in_real_time.png)

### Run attributes

[](#run-attributes)

If you need off run command from Chronos dashboard (`notRunInManual`) or schedules (`notRunInSchedule`) set in ChronosCommand attribute:

```
// ...
use Tkachikov\Chronos\Attributes\ChronosCommand;

#[ChronosCommand(
    notRunInManual: false,
    notRunInSchedule: true,
)]
class TestCommand extends Command
{
    // ...
}
```

### Logging and states

[](#logging-and-states)

For logging command messages and set status added trait `ChronosRunnerTrait`:

```
// ...
class TestCommand extends Command
{
    use ChronosRunnerTrait;
    // ...
}
```

### Create schedules

[](#create-schedules)

Open your command and set params for it in `Create schedule` and save. [![Create schedule](images/create_schedule.png)](images/create_schedule.png)

For off command click button edit, check to off `Run` and save: [![Off schedule](images/off_schedule.png)](images/off_schedule.png)

Group name
----------

[](#group-name)

In default base class name directory for group name.
You must be setting property `group` in `ChronosCommand` attribute. Example:

```
// ...
use Tkachikov\Chronos\Attributes\ChronosCommand;

#[ChronosCommand(
    group: 'MyGroup',
)]
class TestCommand extends Command
{
    // ...
}
```

### Statistics

[](#statistics)

For calculate statistics run commands you must create schedule for `chronos:update-metrics`

License
-------

[](#license)

This package is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).

###  Health Score

49

—

FairBetter than 95% of packages

Maintenance73

Regular maintenance activity

Popularity31

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 99% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~14 days

Total

49

Last Release

141d ago

PHP version history (3 changes)1.0.0PHP ^8.1

1.7.1PHP ^8.4

1.8.0PHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/b2b52385dbfd06d048dbb61ec49947e634d2272c0dddb34f07e99281bb97faa4?d=identicon)[tkachikov](/maintainers/tkachikov)

---

Top Contributors

[![tkachikov](https://avatars.githubusercontent.com/u/58747602?v=4)](https://github.com/tkachikov "tkachikov (96 commits)")[![Filipponik](https://avatars.githubusercontent.com/u/44286080?v=4)](https://github.com/Filipponik "Filipponik (1 commits)")

---

Tags

laravelschedulecommandchronos

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/tkachikov-chronos/health.svg)

```
[![Health](https://phpackages.com/badges/tkachikov-chronos/health.svg)](https://phpackages.com/packages/tkachikov-chronos)
```

###  Alternatives

[laraveljutsu/zap

A flexible, performant, and developer-friendly schedule management system for Laravel

1.4k69.1k](/packages/laraveljutsu-zap)[skywarth/chaotic-schedule

Randomize scheduled command execution time and date intervals

12142.3k](/packages/skywarth-chaotic-schedule)[msztorc/laravel-env

Laravel env helper commands

7855.4k](/packages/msztorc-laravel-env)[indeev/laravel-schedule-calendar

Laravel Schedule Calendar - a package providing developers with a concise and visual representation of scheduled tasks, enabling easy analysis of load distribution throughout the day or week for optimized task scheduling.

557.7k](/packages/indeev-laravel-schedule-calendar)[mvenghaus/filament-plugin-schedule-monitor

Filament Plugin for Spatie's Schedule Monitor

1551.0k1](/packages/mvenghaus-filament-plugin-schedule-monitor)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
