PHPackages                             moataz-hajres/morph-cascade-delete - 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. [Database &amp; ORM](/categories/database)
4. /
5. moataz-hajres/morph-cascade-delete

ActiveLibrary[Database &amp; ORM](/categories/database)

moataz-hajres/morph-cascade-delete
==================================

A simple laravel package to enable cascade deleting on polymorphic relations.

v1.1.0(4y ago)18359MITPHPPHP ^7|^8

Since Oct 21Pushed 4y ago1 watchersCompare

[ Source](https://github.com/moatazHajres/morph-cascade-delete)[ Packagist](https://packagist.org/packages/moataz-hajres/morph-cascade-delete)[ RSS](/packages/moataz-hajres-morph-cascade-delete/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (3)DependenciesVersions (4)Used By (0)

Morph Cascade Delete
====================

[](#morph-cascade-delete)

[![MIT License](https://camo.githubusercontent.com/7c124530b7c185c6928998842a1a52ed4bfd21071bf67db8f325f470cc3160a3/68747470733a2f2f696d672e736869656c64732e696f2f61706d2f6c2f61746f6d69632d64657369676e2d75692e7376673f)](https://github.com/tterb/atomic-design-ui/blob/master/LICENSEs)

A simple laravel package to enable cascade deleting on polymorphic relations.

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

[](#installation)

Install with composer

```
  composer require moataz-hajres/morph-cascade-delete
```

Compatibility
-------------

[](#compatibility)

Tested on Laravel 8 with php 8, but it should work fine on laravel 6,7 with php ^7|^8.

Usage
-----

[](#usage)

Relation types Supported for now: `morphOne` - `morphMany` - `morphToMany`.

1- Use the trait within models that has child morph relations.

2- Make sure to define the relation methods as `public` &amp; `final`.

```
....

class User extends Model {

    use MorphCascadeDelete;

    final public function images() {
        return $this->morphMany(Image::class, 'imageable');
    }

}

....
```

That's it, you're all set!

License
-------

[](#license)

[MIT](https://choosealicense.com/licenses/mit/)

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity19

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~1 days

Total

3

Last Release

1668d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/f7ae70fad4e88e84b2084a96bd48a2dc180b1bb1de3c49bebfcd8bdb49a06103?d=identicon)[moatazHajres](/maintainers/moatazHajres)

---

Top Contributors

[![moatazHajres](https://avatars.githubusercontent.com/u/68563783?v=4)](https://github.com/moatazHajres "moatazHajres (14 commits)")

---

Tags

laravelmorphpolymorphicdelete cascade

### Embed Badge

![Health badge](/badges/moataz-hajres-morph-cascade-delete/health.svg)

```
[![Health](https://phpackages.com/badges/moataz-hajres-morph-cascade-delete/health.svg)](https://phpackages.com/packages/moataz-hajres-morph-cascade-delete)
```

###  Alternatives

[cybercog/laravel-ownership

Laravel Ownership simplify management of Eloquent model's owner.

9126.6k3](/packages/cybercog-laravel-ownership)[rinvex/laravel-tenants

Rinvex Tenants is a contextually intelligent polymorphic Laravel package, for single db multi-tenancy. You can completely isolate tenants data with ease using the same database, with full power and control over what data to be centrally shared, and what to be tenant related and therefore isolated from others.

823.5k10](/packages/rinvex-laravel-tenants)[moneo/laravel-morphmap

Custom morphMap support for Laravel Framework

521.6k](/packages/moneo-laravel-morphmap)

PHPackages © 2026

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