PHPackages                             cristianvuolo/exceptions - 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. [Framework](/categories/framework)
4. /
5. cristianvuolo/exceptions

ActiveLibrary[Framework](/categories/framework)

cristianvuolo/exceptions
========================

Provides A Powerful Error Response System For Both Development And Production

1.0.1(9y ago)029MITPHPPHP &gt;=5.5.9

Since Mar 2Pushed 9y ago1 watchersCompare

[ Source](https://github.com/cristianvuolo/laravel-exceptions)[ Packagist](https://packagist.org/packages/cristianvuolo/exceptions)[ RSS](/packages/cristianvuolo-exceptions/feed)WikiDiscussions master Synced 2d ago

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

Laravel Exceptions
==================

[](#laravel-exceptions)

Laravel Exceptions was created by, and is maintained by [Graham Campbell](https://github.com/CristianVuolo), and provides a powerful error response system for both development and production for [Laravel 5](http://laravel.com). It optionally utilises the [Whoops](https://github.com/filp/whoops) package for the development error pages. Feel free to check out the [change log](CHANGELOG.md), [releases](https://github.com/CristianVuolo/Laravel-Exceptions/releases), [license](LICENSE), and [contribution guidelines](CONTRIBUTING.md).

[![Laravel Exceptions](https://cloud.githubusercontent.com/assets/2829600/5115020/8da9e70a-7035-11e4-9d28-080b4ba55ed9.PNG)](https://cloud.githubusercontent.com/assets/2829600/5115020/8da9e70a-7035-11e4-9d28-080b4ba55ed9.PNG)

[![StyleCI Status](https://camo.githubusercontent.com/ef1081bc798146cf18e4338f330ee705b08add0d9f02bd3c2f672d409c50f569/68747470733a2f2f7374796c6563692e696f2f7265706f732f32363838323138322f736869656c64)](https://styleci.io/repos/26882182)[![Build Status](https://camo.githubusercontent.com/26b08fab3d76b76f0a8859200570c49c7dd8029d14ae7dfc6b08755e1d7d4162/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f437269737469616e56756f6c6f2f4c61726176656c2d457863657074696f6e732f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/CristianVuolo/Laravel-Exceptions)[![Coverage Status](https://camo.githubusercontent.com/af472b0b40a2a76d65b478920ac887e72017a1718c667b65ff364ccc017fc78b/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f636f7665726167652f672f437269737469616e56756f6c6f2f4c61726176656c2d457863657074696f6e732e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/CristianVuolo/Laravel-Exceptions/code-structure)[![Quality Score](https://camo.githubusercontent.com/e3d6bd513c4d8296d4815a0cdcb31d0dcfdc78a930e0713cc785cfd87bb2e7a1/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f437269737469616e56756f6c6f2f4c61726176656c2d457863657074696f6e732e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/CristianVuolo/Laravel-Exceptions)[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE)[![Latest Version](https://camo.githubusercontent.com/aaadcd7e0037294d2ddf851aa6733522cb5feebd6475db487ff182f62f0552f5/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f437269737469616e56756f6c6f2f4c61726176656c2d457863657074696f6e732e7376673f7374796c653d666c61742d737175617265)](https://github.com/CristianVuolo/Laravel-Exceptions/releases)

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

[](#installation)

Either [PHP](https://php.net) 5.5+ or [HHVM](http://hhvm.com) 3.6+ are required.

To get the latest version of Laravel Exceptions, simply require the project using [Composer](https://getcomposer.org):

```
$ composer require graham-campbell/exceptions
```

Instead, you may of course manually update your require block and run `composer update` if you so choose:

```
{
    "require": {
        "cristianvuolo/exceptions": "^9.0"
    }
}
```

If you want to have the debug error pages available, you're going to need to require [Whoops](https://github.com/filp/whoops):

```
$ composer require filp/whoops --dev
```

We support both Whoops `^1.1` or `^2.0`, so feel free to use either.

Once Laravel Exceptions is installed, you need to register the service provider. Open up `config/app.php` and add the following to the `providers` key.

- `'CristianVuolo\Exceptions\ExceptionsServiceProvider'`

You then MUST change your `App\Exceptions\Handler` class to extend `CristianVuolo\Exceptions\NewExceptionHandler` for Laravel 5.3 or `CristianVuolo\Exceptions\ExceptionHandler` for Laravel 5.1/5.2, rather than extending `Illuminate\Foundation\Exceptions\Handler`, or if you're using Lumen, you're going to want to extend `CristianVuolo\Exceptions\LumenExceptionHandler`.

Configuration
-------------

[](#configuration)

Laravel Exceptions supports optional configuration.

To get started, you'll need to publish all vendor assets:

```
$ php artisan vendor:publish
```

This will create a `config/exceptions.php` file in your app that you can modify to set your configuration. Also, make sure you check for changes to the original config file in this package between releases.

There are a few config options:

##### Exception Transformers

[](#exception-transformers)

This option (`'transformers'`) defines each of the exception transformers setup for your application. This allows you to turn your exceptions into other exceptions such as exceptions for perfect results when passed to the displayers. Note that this list is processed in order and subsequent transformers can still modify the results of previous ones if required.

##### Exception Displayers

[](#exception-displayers)

This option (`'displayers'`) defines each of the exception displayers setup for your application. These displayers are sorted by priority. Note that when we are in debug mode, we will select the first valid displayer from the list, and when we are not in debug mode, we'll filter out all verbose displayers, then select the first valid displayer from the new list.

##### Displayer Filters

[](#displayer-filters)

This option (`'filters'`) defines each of the filters for the displayers. This allows you to apply filters to your displayers in order to work out which displayer to use for each exception. This includes things like content type negotiation.

##### Default Displayer

[](#default-displayer)

This option (`'default'`) defines the default displayer for your application. This displayer will be used if your filters have filtered out all the displayers, otherwise leaving us unable to displayer the exception.

##### Exception Levels

[](#exception-levels)

This option (`'levels'`) defines the log levels for the each exception. If an exception passes an instance of test for each key, then the log level used is the value associated with each key.

Usage
-----

[](#usage)

There is currently no usage documentation for Laravel Exceptions, but we are open to pull requests.

Security
--------

[](#security)

If you discover a security vulnerability within this package, please send an e-mail to Graham Campbell at . All security vulnerabilities will be promptly addressed.

License
-------

[](#license)

Laravel Exceptions is licensed under [The MIT License (MIT)](LICENSE).

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 96% 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 ~53 days

Total

2

Last Release

3306d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7950f9782d712f39bd5931e7bd36a653713b15e55f6a4129d029d112a99ddf2a?d=identicon)[cristianvuolo](/maintainers/cristianvuolo)

---

Top Contributors

[![GrahamCampbell](https://avatars.githubusercontent.com/u/2829600?v=4)](https://github.com/GrahamCampbell "GrahamCampbell (313 commits)")[![vinkla](https://avatars.githubusercontent.com/u/499192?v=4)](https://github.com/vinkla "vinkla (6 commits)")[![cristianvuolo](https://avatars.githubusercontent.com/u/2281424?v=4)](https://github.com/cristianvuolo "cristianvuolo (4 commits)")[![joecohens](https://avatars.githubusercontent.com/u/1803556?v=4)](https://github.com/joecohens "joecohens (1 commits)")[![libern](https://avatars.githubusercontent.com/u/1830640?v=4)](https://github.com/libern "libern (1 commits)")[![thomasHolman](https://avatars.githubusercontent.com/u/1763581?v=4)](https://github.com/thomasHolman "thomasHolman (1 commits)")

---

Tags

frameworklaravelexceptionerrorwhoopserrorsexceptionsGraham CampbellGrahamCampbellLaravel Exceptions

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/cristianvuolo-exceptions/health.svg)

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

###  Alternatives

[graham-campbell/exceptions

Provides A Powerful Error Response System For Both Development And Production

5911.3M4](/packages/graham-campbell-exceptions)[graham-campbell/markdown

Markdown Is A CommonMark Wrapper For Laravel

1.3k7.1M64](/packages/graham-campbell-markdown)[graham-campbell/manager

Manager Provides Some Manager Functionality For Laravel

39221.1M134](/packages/graham-campbell-manager)[graham-campbell/throttle

Throttle Is A Rate Limiter For Laravel

7102.3M11](/packages/graham-campbell-throttle)[graham-campbell/github

GitHub Is A GitHub Bridge For Laravel

6411.7M19](/packages/graham-campbell-github)[laravel-zero/framework

The Laravel Zero Framework.

3371.4M369](/packages/laravel-zero-framework)

PHPackages © 2026

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