PHPackages                             aguila/enum-field-aguila - 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. aguila/enum-field-aguila

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

aguila/enum-field-aguila
========================

A Laravel Nova field.

v1.0.0(2y ago)05MITPHPPHP &gt;=8.1.0

Since Mar 20Pushed 2y ago1 watchersCompare

[ Source](https://github.com/soft-aguila/enum-field-aguila)[ Packagist](https://packagist.org/packages/aguila/enum-field-aguila)[ RSS](/packages/aguila-enum-field-aguila/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (4)Versions (2)Used By (0)

Laravel Nova Enum Field
=======================

[](#laravel-nova-enum-field)

Nova field for enum in PHP 8.1 and above

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

[](#installation)

You can install this package in a Laravel app that uses [Nova](https://nova.laravel.com) via composer:

```
composer require Aguila/enum-field
```

Setup
-----

[](#setup)

```
use App\Enums\UserType;
use Illuminate\Database\Eloquent\Model;

class Example extends Model
{
    protected $casts = [
        'user_type' => UserType::class,
    ];
}
```

Usage
-----

[](#usage)

You can use the `Enum` field in your Nova resource like this:

```
namespace App\Nova;

use App\Enums\UserType;
use Aguila\EnumField\Enum;

class Example extends Resource
{
    // ...

    public function fields(Request $request)
    {
        return [
            // ...

            Enum::make('User Type')->attach(UserType::class),

            // ...
        ];
    }
}
```

### Filters

[](#filters)

If you would like to use the provided Nova Select filter (which is compatible with both the `Enum` and `FlaggedEnum` fields), you can include it like this:

```
namespace App\Nova;

use App\Enums\UserPermissions;
use App\Enums\UserType;
use Aguila\EnumField\EnumFilter;

class Example extends Resource
{
    // ...

    public function filters(Request $request)
    {
        return [
            EnumFilter::make(__('User Type'), 'user_type', UserType::class),

             // With optional default value:
            EnumFilter::make(__('User Type'), 'user_type', UserType::class, UserType::Administrator),
        ];
    }
}
```

Alternatively, you may wish to use the provided Nova Boolean filter (which is also compatible with both the `Enum` and `FlaggedEnum` fields):

```
namespace App\Nova;

use App\Enums\UserPermissions;
use App\Enums\UserType;
use Aguila\EnumField\EnumBooleanFilter;

class Example extends Resource
{
    // ...

    public function filters(Request $request)
    {
        return [
            EnumBooleanFilter::make(__('User Type'), 'user_type', UserType::class),

            // With optional default values:
            EnumBooleanFilter::make(__('User Type'), 'user_type', UserType::class, [
                UserType::Administrator,
                UserType::Moderator,
            ]),
        ];
    }
}
```

Credits
-------

[](#credits)

- [Süleyman ÖZEV](https://github.com/Aguila)

Thanks
------

[](#thanks)

- [simplesquid/nova-enum-field](https://github.com/simplesquid/nova-enum-field)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity50

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

Unknown

Total

1

Last Release

783d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/52727104fae7517a27e4306c3c793b42326996a76b319c66a374680d0bc06731?d=identicon)[soft-aguila](/maintainers/soft-aguila)

---

Top Contributors

[![soft-aguila](https://avatars.githubusercontent.com/u/164163390?v=4)](https://github.com/soft-aguila "soft-aguila (1 commits)")

---

Tags

laravelenumnova

### Embed Badge

![Health badge](/badges/aguila-enum-field-aguila/health.svg)

```
[![Health](https://phpackages.com/badges/aguila-enum-field-aguila/health.svg)](https://phpackages.com/packages/aguila-enum-field-aguila)
```

###  Alternatives

[yajra/laravel-datatables-oracle

jQuery DataTables API for Laravel

4.9k33.8M339](/packages/yajra-laravel-datatables-oracle)[spatie/laravel-enum

Laravel Enum support

3655.4M31](/packages/spatie-laravel-enum)[datomatic/nova-enum-field

A Laravel Nova PHP 8.1 enum field with filters

20134.2k](/packages/datomatic-nova-enum-field)[psalm/plugin-laravel

Psalm plugin for Laravel

3274.9M308](/packages/psalm-plugin-laravel)[simplesquid/nova-enum-field

A Laravel Nova field to add enums to resources.

52391.9k2](/packages/simplesquid-nova-enum-field)[naoray/nova-json

Nova json field to spread a json column throughout multiple fields.

37478.6k](/packages/naoray-nova-json)

PHPackages © 2026

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