PHPackages                             jodeveloper/approval-flow - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. jodeveloper/approval-flow

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

jodeveloper/approval-flow
=========================

A Laravel package for managing approval workflows with enums and traits

1.1.1(9mo ago)06[4 PRs](https://github.com/JoDeveloper/approval-flow/pulls)MITPHPPHP ^8.1CI passing

Since Sep 10Pushed 2mo agoCompare

[ Source](https://github.com/JoDeveloper/approval-flow)[ Packagist](https://packagist.org/packages/jodeveloper/approval-flow)[ Docs](https://github.com/jodeveloper/approval-flow)[ RSS](/packages/jodeveloper-approval-flow/feed)WikiDiscussions main Synced today

READMEChangelog (10)Dependencies (14)Versions (18)Used By (0)

Nakhlah Approval Flow
=====================

[](#nakhlah-approval-flow)

[![Latest Version on Packagist](https://camo.githubusercontent.com/2847fcb1464718ef3eadaf0aec3fdce55b4f5f55dcdb475a58c0999d5f58c5fb/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6a6f646576656c6f7065722f617070726f76616c2d666c6f772e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/jodeveloper/approval-flow)[![GitHub Tests Action Status](https://camo.githubusercontent.com/033a160aaa1dd13ec347d3e4b37207c5a81af1fc07714de39be564d6d2ddfa3b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6a6f646576656c6f7065722f617070726f76616c2d666c6f772f72756e2d74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/jodeveloper/approval-flow/actions?query=workflow%3Arun-tests+branch%3Amain)[![GitHub Code Style Action Status](https://camo.githubusercontent.com/e92239af051c1d99b448407ea0be21fec2f6fe5434fc1ce060f989b3e1443776/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6a6f646576656c6f7065722f617070726f76616c2d666c6f772f6669782d7068702d636f64652d7374796c652d6973737565732e796d6c3f6272616e63683d6d61696e266c6162656c3d636f64652532307374796c65267374796c653d666c61742d737175617265)](https://github.com/jodeveloper/approval-flow/actions?query=workflow%3A%22Fix+PHP+code+style+issues%22+branch%3Amain)[![Total Downloads](https://camo.githubusercontent.com/06889e2de521240be55b45f08d7366a2ab4755a8c0012dd4f606352dce83f0ea/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6a6f646576656c6f7065722f617070726f76616c2d666c6f772e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/jodeveloper/approval-flow)

A powerful Laravel package for managing approval workflows using PHP 8.1+ enums and traits. Create complex approval processes with ease!

Features
--------

[](#features)

- ✅ **Type-safe approval flows** using PHP 8.1 enums
- ✅ **Reusable trait** for any Eloquent model
- ✅ **Permission-based approvals** with Laravel's authorization system
- ✅ **Event-driven architecture** for notifications and logging
- ✅ **Automatic activity logging** with user tracking
- ✅ **Bulk approval operations**
- ✅ **Artisan command** to generate approval flow enums
- ✅ **Comprehensive testing** with Pest

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

[](#installation)

You can install the package via composer:

```
composer require jodeveloper/approval-flow
```

You can publish and run the migrations with:

```
php artisan vendor:publish --tag="approval-flow-migrations"
php artisan migrate
```

You can publish the config file with:

```
php artisan vendor:publish --tag="approval-flow-config"
```

Quick Start
-----------

[](#quick-start)

### 1. Create an Approval Flow Enum

[](#1-create-an-approval-flow-enum)

Generate a new approval flow enum:

```
php artisan make:approval-flow Document
```

This creates `app/Enums/DocumentStatuses.php`:

```
