{"id":13545668,"url":"https://github.com/squareboat/sneaker","last_synced_at":"2025-12-30T09:25:14.108Z","repository":{"id":46622561,"uuid":"68989333","full_name":"squareboat/sneaker","owner":"squareboat","description":"An easy way to send emails whenever an exception occurs on server.","archived":false,"fork":false,"pushed_at":"2024-03-19T21:45:50.000Z","size":199,"stargazers_count":220,"open_issues_count":21,"forks_count":47,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-03-08T22:03:08.836Z","etag":null,"topics":["error-handling","error-monitoring","laravel","laravel-5-package","laravel-package"],"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/squareboat.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"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":"2016-09-23T04:38:58.000Z","updated_at":"2024-12-19T01:58:35.000Z","dependencies_parsed_at":"2024-01-16T17:02:19.044Z","dependency_job_id":"6d503912-54d0-40c2-a9ec-5207a9c59450","html_url":"https://github.com/squareboat/sneaker","commit_stats":{"total_commits":41,"total_committers":10,"mean_commits":4.1,"dds":0.2682926829268293,"last_synced_commit":"6aeb660fc8295740d933e901c7c24c7280a17edb"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/squareboat%2Fsneaker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/squareboat%2Fsneaker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/squareboat%2Fsneaker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/squareboat%2Fsneaker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/squareboat","download_url":"https://codeload.github.com/squareboat/sneaker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246841848,"owners_count":20842657,"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":["error-handling","error-monitoring","laravel","laravel-5-package","laravel-package"],"created_at":"2024-08-01T11:01:08.919Z","updated_at":"2025-12-30T09:25:14.081Z","avatar_url":"https://github.com/squareboat.png","language":"PHP","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"# Laravel Exception Notifications\n\nAn easy way to send emails with stack trace whenever an exception occurs on the server for Laravel applications.\n\n![sneaker example image](sneaker.png?raw=true \"Sneaker\")\n\n## Install\n\n### Install via Composer\n\n#### For Laravel \u003c= 5.2, please use the [v1 branch](https://github.com/squareboat/sneaker/tree/v1)!\n#### For Laravel 5.2 \u003c version \u003c= 6.x, please use the [v5 branch](https://github.com/squareboat/sneaker/tree/v5)!\n\n```\n$ composer require squareboat/sneaker\n```\n\n### Configure Laravel\n\n\u003e If you are using __laravel 5.5__ or higher you should skip this step.\n\nIf you are using laravel 5.3 or 5.4, simply add the service provider to your project's `config/app.php` file:\n\n#### Service Provider\n```\nSquareBoat\\Sneaker\\SneakerServiceProvider::class,\n```\n\n### Add Sneaker's Exception Capturing\n\nAdd exception capturing to `app/Exceptions/Handler.php`:\n\n```php\npublic function report(Exception $exception)\n{\n    app('sneaker')-\u003ecaptureException($exception);\n\n    parent::report($exception);\n}\n```\n\n### Configuration File\n\nCreate the Sneaker configuration file  with this command:\n\n```bash\n$ php artisan vendor:publish --provider=\"SquareBoat\\Sneaker\\SneakerServiceProvider\"\n```\n\nThe config file will be published in  `config/sneaker.php`\n\nFollowing are the configuration attributes used for the Sneaker.\n\n#### silent\n\nThe package comes with `'silent' =\u003e true,` configuration by default, since you probably don't want error emailing enabled on your development environment. Especially if you've set `'debug' =\u003e true,`.\n\n```php\n'silent' =\u003e env('SNEAKER_SILENT', true),\n```\n\nFor sending emails when an exception occurs set `SNEAKER_SILENT=false` in your `.env` file.\n\n\n#### capture\n\nIt contains the list of the exception types that should be captured. You can add your exceptions here for which you want to send error emails.\n\nBy default, the package has included `Symfony\\Component\\Debug\\Exception\\FatalErrorException::class`.\n\n```php\n'capture' =\u003e [\n    Symfony\\Component\\Debug\\Exception\\FatalErrorException::class,\n],\n```\n\nYou can also use `'*'` in the `$capture` array which will in turn captures every exception.\n\n```php\n'capture' =\u003e [\n    '*'\n],\n```\n\nTo use this feature you should add the following code in `app/Exceptions/Handler.php`:\n\n```php\npublic function report(Exception $exception)\n{\n    if ($this-\u003eshouldReport($exception)) {\n        app('sneaker')-\u003ecaptureException($exception);\n    }\n\n    parent::report($exception);\n}\n```\n\n#### to\n\nThis is the list of recipients of error emails.\n\n```php\n'to' =\u003e [\n    // 'hello@example.com',\n],\n```\n\n#### ignored_bots\n\nThis is the list of bots for which we should NOT send error emails.\n\n```php\n'ignored_bots' =\u003e [\n    'googlebot',        // Googlebot\n    'bingbot',          // Microsoft Bingbot\n    'slurp',            // Yahoo! Slurp\n    'ia_archiver',      // Alexa\n],\n```\n\n## Customize\n\nIf you need to customize the subject and body of email, run following command:\n\n```bash\n$ php artisan vendor:publish --provider=\"SquareBoat\\Sneaker\\SneakerServiceProvider\"\n```\n\n\u003e Note - Don't run this command again if you have run it already.\n\nNow the email's subject and body view are located in the `resources/views/vendor/sneaker` directory.\n\nWe have passed the thrown exception object `$exception` in the view which you can use to customize the view to fit your needs.\n\n## Sneak\n### Test your integration\nTo verify that Sneaker is configured correctly and our integration is working, use `sneaker:sneak` Artisan command:\n\n```bash\n$ php artisan sneaker:sneak\n```\n\nA `SquareBoat\\Sneaker\\Exceptions\\DummyException` class will be thrown and captured by Sneaker. The captured exception will appear in your configured email immediately.\n\n## Security\n\nIf you discover any security related issues, please email akaamitgupta@gmail.com instead of using the issue tracker.\n\n## Credits\n\n- [Amit Gupta](https://github.com/akaamitgupta)\n- [All Contributors](../../contributors)\n\n## About SquareBoat\n\n[SquareBoat](https://squareboat.com) is a startup focused, product development company based in Gurgaon, India. You'll find an overview of all our open source projects [on GitHub](https://github.com/squareboat).\n\n# License\n\nThe MIT License. Please see [License File](LICENSE.md) for more information. Copyright © 2020 [SquareBoat](https://squareboat.com)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsquareboat%2Fsneaker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsquareboat%2Fsneaker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsquareboat%2Fsneaker/lists"}