PHPackages                             vipmaa1/laravel-totem - 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. vipmaa1/laravel-totem

ActiveLibrary

vipmaa1/laravel-totem
=====================

A Laravel package to manage your cron jobs through a beautiful dashboard

13(1mo ago)01↓100%MITPHPPHP ^8.2.0

Since Apr 7Pushed 1mo agoCompare

[ Source](https://github.com/vipmaa1/laravel-totem)[ Packagist](https://packagist.org/packages/vipmaa1/laravel-totem)[ RSS](/packages/vipmaa1-laravel-totem/feed)WikiDiscussions 12.x Synced 1mo ago

READMEChangelog (1)Dependencies (10)Versions (3)Used By (0)

 [![Laravel Totem](https://github.com/codestudiohq/laravel-totem/raw/8.0/resources/assets/img/totem.png?raw=true)](https://github.com/codestudiohq/laravel-totem/blob/8.0/resources/assets/img/totem.png?raw=true)

[![Build Status](https://github.com/always-open/laravel-totem/workflows/Laravel/badge.svg?branch=11.x)](https://github.com/always-open/laravel-totem/workflows/Laravel/badge.svg?branch=11.x)[![License](https://camo.githubusercontent.com/46837658d5ffa5892cf9393adfb77dc918e729680c7b7bf3c27de45e969907b8/68747470733a2f2f706f7365722e707567782e6f72672f73747564696f2f6c61726176656c2d746f74656d2f6c6963656e73652e737667)](https://packagist.org/packages/studio/laravel-totem)

Introduction
============

[](#introduction)

Manage your `Laravel Schedule` from a pretty dashboard. Schedule your `Laravel Console Commands` to your liking. Enable/Disable scheduled tasks on the fly without going back to your code again.

Documentation
-------------

[](#documentation)

#### Compatibility Matrix

[](#compatibility-matrix)

LaravelTotem12.x11.x11.x11.x#### Requirements

[](#requirements)

- PHP 8.2+
- Laravel 11.x or 12.x

#### Installing

[](#installing)

Use composer to install Totem into your Laravel project:

```
composer require studio/laravel-totem

```

Once `Laravel Totem` is installed, run the migration and publish the assets:

```
php artisan migrate
php artisan totem:assets

```

#### Updating

[](#updating)

Republish Totem assets after updating to a new version:

```
php artisan totem:assets

```

#### Configuration

[](#configuration)

##### Cron Job

[](#cron-job)

This package assumes that you have a good understanding of [Laravel's Task Scheduling](https://laravel.com/docs/scheduling) and [Laravel Console Commands](https://laravel.com/docs/artisan#writing-commands). Before any of this works please make sure you have a cron running as follows:

```
* * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1

```

##### Web Dashboard

[](#web-dashboard)

`Laravel Totem`'s dashboard is inspired by `Laravel Horizon`. Just like Horizon you can configure authentication to `Totem`'s dashboard. Add the following to the `boot` method of your `AppServiceProvider`:

```
use Studio\Totem\Totem;

Totem::auth(function($request) {
    // return true / false . For e.g.
    return Auth::check();
});
```

By default Totem's dashboard only works in the local environment. To view the dashboard point your browser to `/totem` of your app.

##### Table Prefix

[](#table-prefix)

Totem's tables use generic names which may conflict with existing tables in a project. To alleviate this the `.env` param `TOTEM_TABLE_PREFIX` can be set which will apply a prefix to all of Totem's tables and their models.

##### Cache Store

[](#cache-store)

By default Totem uses your application's default cache store. In environments where UI servers and background worker servers use separate cache clusters (e.g. different Redis instances), Totem's cache can become inconsistent — a bust event on one server won't clear the cache on the other.

Set `TOTEM_CACHE_STORE` to a named store from your `config/cache.php` that is accessible by all servers:

```
TOTEM_CACHE_STORE=redis-shared

```

Setting it to `array` disables cache persistence entirely (each request hits the database):

```
TOTEM_CACHE_STORE=array

```

Leaving it unset uses your application's default cache store (existing behaviour).

##### Filter Commands Dropdown

[](#filter-commands-dropdown)

By default `Totem` outputs all Artisan commands on the Create/Edit tasks. To make this dropdown more concise there is a filter config feature that can be set in the `totem.php` config file.

Example filters:

```
'artisan' => [
    'command_filter' => [
        'stats:*',
        'email:daily-reports'
    ],
],
```

This feature uses [fnmatch](http://php.net/manual/en/function.fnmatch.php) syntax to filter displayed commands. `stats:*` will match all Artisan commands that start with `stats:` while `email:daily-reports` will only match the command named `email:daily-reports`.

This filter can be used as either a whitelist or a blacklist. By default it acts as a whitelist but an option flag can be set to instead act as a blacklist:

```
'artisan' => [
    'command_filter' => [
        'stats:*',
        'email:daily-reports'
    ],
    'whitelist' => false,
],
```

##### Middleware

[](#middleware)

`Laravel Totem` uses the `web` middleware by default. If customization is required the middleware can be changed by setting the `TOTEM_WEB_MIDDLEWARE` value in your `.env`. These values can be found in `config/totem.php`.

##### Notifications

[](#notifications)

Totem can send notifications when a task completes. Email notifications are included out of the box. For SMS (Vonage) or Slack notifications, install the relevant package:

```
composer require laravel/vonage-notification-channel
composer require laravel/slack-notification-channel

```

#### Making Commands Available in `Laravel Totem`

[](#making-commands-available-in-laravel-totem)

All artisan commands are available for scheduling. If you want to hide a command from Totem set the `hidden` attribute to `true` in your command:

```
protected $hidden = true;
```

#### Command Parameters

[](#command-parameters)

If your command requires arguments or options use the optional command parameters field. You can provide parameters as a string in the following format:

```
name=john.doe --greetings='Welcome to the new world'

```

In the example above, `name` is an argument while `greetings` is an option.

#### Console Command

[](#console-command)

Totem provides an artisan command to view a list of scheduled tasks:

```
php artisan schedule:list

```

### Screenshots

[](#screenshots)

##### Task List

[](#task-list)

[![Task List](https://github.com/codestudiohq/laravel-totem/raw/1.0/public/img/screenshots/tasks.png?raw=true)](https://github.com/codestudiohq/laravel-totem/blob/1.0/public/img/screenshots/tasks.png?raw=true)

##### Task Details

[](#task-details)

[![Task List](https://github.com/codestudiohq/laravel-totem/raw/1.0/public/img/screenshots/task-details.png?raw=true)](https://github.com/codestudiohq/laravel-totem/blob/1.0/public/img/screenshots/task-details.png?raw=true)

##### Edit Task

[](#edit-task)

[![Task List](https://github.com/codestudiohq/laravel-totem/raw/1.0/public/img/screenshots/edit-task.png?raw=true)](https://github.com/codestudiohq/laravel-totem/blob/1.0/public/img/screenshots/edit-task.png?raw=true)

##### Artisan Command to view scheduled tasks

[](#artisan-command-to-view-scheduled-tasks)

[![Task List](https://github.com/codestudiohq/laravel-totem/raw/1.0/public/img/screenshots/artisan.png?raw=true)](https://github.com/codestudiohq/laravel-totem/blob/1.0/public/img/screenshots/artisan.png?raw=true)

Changelog
---------

[](#changelog)

Important versions listed below. Refer to the [Changelog](CHANGELOG.md) for a full history of the project.

Credits
-------

[](#credits)

- [Roshan Gautam](https://twitter.com/@roshangautam)
- [OSS Contributors](https://github.com/always-open/laravel-totem/graphs/contributors)

Bug reports, feature requests, and pull requests can be submitted by following our [Contribution Guide](CONTRIBUTING.md).

Contributing &amp; Protocols
----------------------------

[](#contributing--protocols)

- [Versioning](CONTRIBUTING.md#versioning)
- [Coding Standards](CONTRIBUTING.md#coding-standards)
- [Pull Requests](CONTRIBUTING.md#pull-requests)

License
-------

[](#license)

This software is released under the [MIT](LICENSE) License.

© 2025 Roshan Gautam, All rights reserved.

###  Health Score

41

—

FairBetter than 89% of packages

Maintenance93

Actively maintained with recent releases

Popularity2

Limited adoption so far

Community19

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~0 days

Total

3

Last Release

35d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/6ec6d5e1b0f9c0a054df8fbbd912cb46fa0b047f1b434bbd9d7c965275c0b5fd?d=identicon)[vipmaa1](/maintainers/vipmaa1)

---

Top Contributors

[![roshangautam](https://avatars.githubusercontent.com/u/978347?v=4)](https://github.com/roshangautam "roshangautam (112 commits)")[![qschmick](https://avatars.githubusercontent.com/u/5342767?v=4)](https://github.com/qschmick "qschmick (69 commits)")[![tomschlick](https://avatars.githubusercontent.com/u/70184?v=4)](https://github.com/tomschlick "tomschlick (6 commits)")[![jonnott](https://avatars.githubusercontent.com/u/472468?v=4)](https://github.com/jonnott "jonnott (3 commits)")[![o-kima](https://avatars.githubusercontent.com/u/65353752?v=4)](https://github.com/o-kima "o-kima (3 commits)")[![daniel-g-wood](https://avatars.githubusercontent.com/u/33300119?v=4)](https://github.com/daniel-g-wood "daniel-g-wood (3 commits)")[![jpscharf](https://avatars.githubusercontent.com/u/1039984?v=4)](https://github.com/jpscharf "jpscharf (2 commits)")[![shawnheide](https://avatars.githubusercontent.com/u/7305354?v=4)](https://github.com/shawnheide "shawnheide (2 commits)")[![vipmaa1](https://avatars.githubusercontent.com/u/19627123?v=4)](https://github.com/vipmaa1 "vipmaa1 (2 commits)")[![lroggen](https://avatars.githubusercontent.com/u/6265423?v=4)](https://github.com/lroggen "lroggen (2 commits)")[![carusogabriel](https://avatars.githubusercontent.com/u/16328050?v=4)](https://github.com/carusogabriel "carusogabriel (2 commits)")[![jayjfletcher](https://avatars.githubusercontent.com/u/5743488?v=4)](https://github.com/jayjfletcher "jayjfletcher (2 commits)")[![marcoocram](https://avatars.githubusercontent.com/u/6926933?v=4)](https://github.com/marcoocram "marcoocram (1 commits)")[![matthewnessworthy](https://avatars.githubusercontent.com/u/5653887?v=4)](https://github.com/matthewnessworthy "matthewnessworthy (1 commits)")[![MesutErdemir](https://avatars.githubusercontent.com/u/159113?v=4)](https://github.com/MesutErdemir "MesutErdemir (1 commits)")[![pierot](https://avatars.githubusercontent.com/u/46622?v=4)](https://github.com/pierot "pierot (1 commits)")[![solflare](https://avatars.githubusercontent.com/u/8484449?v=4)](https://github.com/solflare "solflare (1 commits)")[![timothyasp](https://avatars.githubusercontent.com/u/707699?v=4)](https://github.com/timothyasp "timothyasp (1 commits)")[![kusnir](https://avatars.githubusercontent.com/u/13214957?v=4)](https://github.com/kusnir "kusnir (1 commits)")[![bondas83](https://avatars.githubusercontent.com/u/29758515?v=4)](https://github.com/bondas83 "bondas83 (1 commits)")

---

Tags

laravelcronschedulemanagertotem

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/vipmaa1-laravel-totem/health.svg)

```
[![Health](https://phpackages.com/badges/vipmaa1-laravel-totem/health.svg)](https://phpackages.com/packages/vipmaa1-laravel-totem)
```

###  Alternatives

[studio/laravel-totem

A Laravel package to manage your cron jobs through a beautiful dashboard

1.8k1.1M](/packages/studio-laravel-totem)[laravel/cashier

Laravel Cashier provides an expressive, fluent interface to Stripe's subscription billing services.

2.5k25.9M107](/packages/laravel-cashier)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k12.1M99](/packages/laravel-pulse)[spatie/laravel-health

Monitor the health of a Laravel application

85810.0M83](/packages/spatie-laravel-health)[yadahan/laravel-authentication-log

Laravel Authentication Log provides authentication logger and notification for Laravel.

416632.8k5](/packages/yadahan-laravel-authentication-log)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)

PHPackages © 2026

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