https://github.com/monooso/unobserve
Mute and unmute Laravel observers at will.
https://github.com/monooso/unobserve
laravel laravel-package php
Last synced: 3 months ago
JSON representation
Mute and unmute Laravel observers at will.
- Host: GitHub
- URL: https://github.com/monooso/unobserve
- Owner: monooso
- License: mit
- Created: 2019-09-25T11:42:44.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2025-11-26T21:59:26.000Z (4 months ago)
- Last Synced: 2025-11-27T15:30:26.833Z (4 months ago)
- Topics: laravel, laravel-package, php
- Language: PHP
- Size: 363 KB
- Stars: 82
- Watchers: 2
- Forks: 12
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Unobserve
## About Unobserve
When testing Laravel applications, we frequently need to "silence" events, so as not to trigger additional side-effects. [Laravel's `Event::fake` method](https://laravel.com/docs/mocking#event-fake) is useful, but muting a specific [model observer](https://laravel.com/docs/eloquent#observers) is still problematic.
Unobserve takes care of that, making it easy to mute and unmute an observer at will.
## Requirements and installation
Select the appropriate version of Unobserve from the following table.
| Unobserve | Laravel | PHP |
|:-------|:-----------------|:------------|
| 1.x | `^5.8`, `^6.0` | `^7.2` |
| 2.x | `^7.0` | `^7.2.5` |
| 3.x | `^8.0` | `^7.3.0` |
| 4.x | `^8.0` | `^8.0.0` |
| 5.x | `^9.0`, `^10.0` | `^8.0.0` |
| 6.x | `^11.0`, `12.0` | `^8.2.0` |
Install Unobserve using [Composer](https://getcomposer.org/):
```bash
composer require monooso/unobserve
```
## Usage
First, add the `CanMute` trait to your observer class.
```php