{"id":13560186,"url":"https://github.com/codestudiohq/laravel-totem","last_synced_at":"2025-05-14T03:12:15.734Z","repository":{"id":37405592,"uuid":"99050894","full_name":"codestudiohq/laravel-totem","owner":"codestudiohq","description":"Manage Your Laravel Schedule From A Web Dashboard","archived":false,"fork":false,"pushed_at":"2024-03-27T16:07:51.000Z","size":12406,"stargazers_count":1811,"open_issues_count":3,"forks_count":226,"subscribers_count":36,"default_branch":"11.x","last_synced_at":"2025-05-12T15:54:42.639Z","etag":null,"topics":["artisan-commands","cron","cron-jobs","dashboard","hacktoberfest","laravel","laravel-schedule","laravel-totem","package","scheduling"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codestudiohq.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-01T23:15:40.000Z","updated_at":"2025-05-11T14:58:26.000Z","dependencies_parsed_at":"2023-02-14T17:15:44.420Z","dependency_job_id":"fe29bf91-a8c0-4df8-87ba-2a91b4688ff8","html_url":"https://github.com/codestudiohq/laravel-totem","commit_stats":{"total_commits":220,"total_committers":46,"mean_commits":4.782608695652174,"dds":0.6272727272727272,"last_synced_commit":"620c42feda51ff0a06ad854861ccec0bf0dda1fa"},"previous_names":[],"tags_count":81,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codestudiohq%2Flaravel-totem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codestudiohq%2Flaravel-totem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codestudiohq%2Flaravel-totem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codestudiohq%2Flaravel-totem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codestudiohq","download_url":"https://codeload.github.com/codestudiohq/laravel-totem/tar.gz/refs/heads/11.x","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254059522,"owners_count":22007771,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["artisan-commands","cron","cron-jobs","dashboard","hacktoberfest","laravel","laravel-schedule","laravel-totem","package","scheduling"],"created_at":"2024-08-01T13:00:39.173Z","updated_at":"2025-05-14T03:12:10.724Z","avatar_url":"https://github.com/codestudiohq.png","language":"PHP","funding_links":[],"categories":["Uncategorized","PHP"],"sub_categories":["Uncategorized"],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/codestudiohq/laravel-totem/blob/8.0/resources/assets/img/totem.png?raw=true\" alt=\"Laravel Totem\"/\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://github.com/codestudiohq/laravel-totem/workflows/Laravel/badge.svg?branch=8.0\" alt=\"Build Status\"\u003e\n\u003ca href=\"https://packagist.org/packages/studio/laravel-totem\"\u003e\u003cimg src=\"https://poser.pugx.org/studio/laravel-totem/license.svg\" alt=\"License\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n# Introduction\n\n[![Join the chat at https://gitter.im/laravel-totem/Lobby](https://badges.gitter.im/laravel-totem/Lobby.svg)](https://gitter.im/laravel-totem/Lobby?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n\nManage 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.\n\n## Documentation\n\n#### Compatiblity Matrix\n\n| \u003cspan align=\"left\"\u003eLaravel\u003c/span\u003e | \u003cspan align=\"left\"\u003eTotem\u003c/span\u003e |\n| :-------------------------------- | ------------------------------: |\n| 11.x                              |                            11.x |\n| 10.x                              |                            10.x |\n| 9.x                               |                             9.x |\n| 8.x                               |                             8.x |\n| 7.x                               |                             7.x |\n| 6.x                               |                             6.x |\n| 5.8                               |                             5.x |\n| 5.7                               |                             4.x |\n| 5.6                               |                             3.x |\n| 5.5                               |                             2.x |\n| 5.4                               |                             1.x |\n\n#### Installing\n\n`Totem` requires Laravel v5.4 and above, please refer to the above table for compatability. Use composer to install totem to your Laravel project\n\n```\ncomposer require studio/laravel-totem\n```\n\n\u003e Laravel Totem supports auto package discovery for Laravel v5.5+, therefore service provider registration is not required in Laravel v5.5+\n\nAdd `TotemServiceProvider` to the `providers` array of your Laravel v5.4 application's config/app.php\n\n```php\nStudio\\Totem\\Providers\\TotemServiceProvider::class,\n```\n\nOnce `Laravel Totem` is installed \u0026 registered,\n\n- Run the migration\n\n```\nphp artisan migrate\n```\n\n- Publish `Totem` assets to your public folder using the following command\n\n```\nphp artisan totem:assets\n```\n\n##### Table Prefix\n\nTotems' 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 Totems tables and their models.\n\n#### Updating\n\nPlease republish totem assets after updating totem to a new version\n\n```\nphp artisan totem:assets\n```\n\n#### Configuration\n\n##### Cron Job\n\nThis package assumes that you have a good understanding of [Laravel's Task Scheduling](https://laravel.com/docs/5.4/scheduling) and [Laravel Console Commands](https://laravel.com/docs/5.4/artisan#writing-commands). Before any of this works please make sure you have a cron running as follows:\n\n```\n* * * * * php /path-to-your-project/artisan schedule:run \u003e\u003e /dev/null 2\u003e\u00261\n```\n\n##### Web Dashboard\n\n`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 or wherever you might seem fit.\n\n```php\nuse Studio\\Totem\\Totem;\n\nTotem::auth(function($request) {\n    // return true / false . For e.g.\n    return Auth::check();\n});\n```\n\nBy default Totem's dashboard only works in local environment. To view the dashboard point your browser to /totem of your app. For e.g. laravel.dev/totem.\n\n##### Filter Commands Dropdown\n\nBy 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.\n\nExample filters\n\n```php\n'artisan' =\u003e [\n    'command_filter' =\u003e [\n        'stats:*',\n        'email:daily-reports'\n    ],\n],\n```\n\nThis 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`.\n\nThis 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.\n\n```php\n'artisan' =\u003e [\n    'command_filter' =\u003e [\n        'stats:*',\n        'email:daily-reports'\n    ],\n    'whitelist' =\u003e true,\n],\n\n```\n\nIf the value of whitelist is `false` then the filter acts as a blacklist.\n\n`'whitelist' =\u003e false`\n\n#### Middleware\n\n`Laravel Totem` uses the default web and api middleware but if customization is required the middleware can be changed by setting the appropriate `.env` value. These values can be found in `config/totem.php`.\n\n#### Making Commands available in `Laravel Totem`\n\nAll artisan commands can be scheduled. If you want to hide a command from Totem make sure you have the `hidden` attribute set to true in your command. For e.g.\n\n```php\nprotected $hidden = true;\n```\n\nFrom L5.5 onwards all commands are auto registered, so this wouldn't be a problem.\n\n#### Command Parameters\n\nIf your command requires arguments or options please use the optional command parameters field. You can provide parameters to your command as a string in the following manner\n\n```text\nname=john.doe --greetings='Welcome to the new world'\n```\n\nIn the example above, name is an argument while greetings is an option\n\n#### Console Command\n\nIn addition to the dashboard, Totem provides an artisan command to view a list of scheduled task.\n\n```\nphp artisan schedule:list\n```\n\n### Screenshots\n\n##### Task List\n\n\u003cimg src=\"https://github.com/codestudiohq/laravel-totem/blob/1.0/public/img/screenshots/tasks.png?raw=true\" alt=\"Task List\"/\u003e\n\n##### Task Details\n\n\u003cimg src=\"https://github.com/codestudiohq/laravel-totem/blob/1.0/public/img/screenshots/task-details.png?raw=true\" alt=\"Task List\"/\u003e\n\n##### Edit Task\n\n\u003cimg src=\"https://github.com/codestudiohq/laravel-totem/blob/1.0/public/img/screenshots/edit-task.png?raw=true\" alt=\"Task List\"/\u003e\n\n##### Artisan Command to view scheduled tasks\n\n\u003cimg src=\"https://github.com/codestudiohq/laravel-totem/blob/1.0/public/img/screenshots/artisan.png?raw=true\" alt=\"Task List\"/\u003e\n\n## Changelog\n\nImportant versions listed below. Refer to the [Changelog](CHANGELOG.md) for a full history of the project.\n\n## Credits\n\n- [Roshan Gautam](https://twitter.com/@roshangautam)\n- [OSS Contributors](https://github.com/codestudiohq/laravel-totem/graphs/contributors)\n\nBug reports, feature requests, and pull requests can be submitted by following our [Contribution Guide](CONTRIBUTING.md).\n\n## Contributing \u0026 Protocols\n\n- [Versioning](CONTRIBUTING.md#versioning)\n- [Coding Standards](CONTRIBUTING.md#coding-standards)\n- [Pull Requests](CONTRIBUTING.md#pull-requests)\n\n## License\n\nThis software is released under the [MIT](LICENSE) License.\n\n© 2020 Roshan Gautam, All rights reserved.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodestudiohq%2Flaravel-totem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodestudiohq%2Flaravel-totem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodestudiohq%2Flaravel-totem/lists"}