PHPackages                             reedware/nova-action-gearbox - 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. reedware/nova-action-gearbox

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

reedware/nova-action-gearbox
============================

Replaces the Nova Action Selector with a Gearbox Dropdown.

010PHP

Since Mar 4Pushed 7y ago1 watchersCompare

[ Source](https://github.com/tylernathanreed/nova-action-gearbox)[ Packagist](https://packagist.org/packages/reedware/nova-action-gearbox)[ RSS](/packages/reedware-nova-action-gearbox/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Nova Action Gearbox
-------------------

[](#nova-action-gearbox)

Replaces the Nova Action Selector with a Gearbox Dropdown.

### Installation

[](#installation)

#### Step 1: Require this Package

[](#step-1-require-this-package)

Require this package with composer.

```
composer require reedware/nova-action-gearbox
```

This package uses auto-discovery, so doesn't require you to manually add the service provider. Should you choose to do this manually, you can include the following class in your list of service providers:

```
\Reedware\NovaActionGearbox\NovaActioNGearboxServiceProvider::class
```

#### Step 2: Update your base Resource

[](#step-2-update-your-base-resource)

This package overrides some of the functionality of the base Resource. You'll have to update your base Resource in order to use the Action Gearbox. There are two ways to do this:

**Option A)** Extend the Action Gearbox Resource

```
use Reedware\NovaActionGearbox\Resource as ActionGearboxResource;

abstract class Resource extends ActionGearboxResource
{
  /* ... */
}
```

This is the easiest, and recommended solution.

**Option B)** Use the Action Gearbox Resource Trait

```
use Laravel\Nova\Resource as NovaResource;
use Reedware\NovaActionGearbox\HasGearboxActions;

abstract class Resource extends NovaResource
{
  use HasGearboxActions;
}
```

This is the alternative solution for when you can't, or prefer not to, extend the Resource class that comes with this package.

#### Step 3: Update your base Lens

[](#step-3-update-your-base-lens)

Lenses can come with actions too, therefore this package requires a small override for them. You'll have to update your base Lens in order to use the Action Gearbox. There are two ways to do this:

**Option A)** Extend the Action Gearbox Lens

```
use Reedware\NovaActionGearbox\Lenses\Lens as ActionGearboxLens;

abstract class Lens extends ActionGearboxLens
{
  /* ... */
}
```

This is the easiest, and recommended solution.

**Option B)** Use the Action Gearbox Lens Traits

```
use Laravel\Nova\Lenses\Lens as NovaLens;
use Reedware\NovaActionGearbox\Lenses\GuessesResource;
use Reedware\NovaActionGearbox\ResolvesGearboxActions;

abstract class Lens extends NovaLens
{
  use ResolvesGearboxActions, GuessesResource;
}
```

#### Step 4: Update your base Action

[](#step-4-update-your-base-action)

Actions are the name of the game here. You'll have to update your base Action in order to use the Action Gearbox. Unlike the previous two steps, there's only one way to do this: extend the Action Gearbox Action.

```
use Illuminate\Bus\Queueable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Queue\InteractsWithQueue;
use Reedware\NovaActionGearbox\Actions\Action as ActionGearboxAction;

class Action extends ActionGearboxAction
{
    use InteractsWithQueue, Queueable, SerializesModels;
}
```

You don't have to include the traits from Illuminate, these are only shown as an example.

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity37

Early-stage or recently created project

 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/6bfd8171901449cf1e05fa5db261a2f424abca5e26818ce54b95442de0661754?d=identicon)[tylernathanreed](/maintainers/tylernathanreed)

---

Top Contributors

[![tylernathanreed](https://avatars.githubusercontent.com/u/6486381?v=4)](https://github.com/tylernathanreed "tylernathanreed (9 commits)")

### Embed Badge

![Health badge](/badges/reedware-nova-action-gearbox/health.svg)

```
[![Health](https://phpackages.com/badges/reedware-nova-action-gearbox/health.svg)](https://phpackages.com/packages/reedware-nova-action-gearbox)
```

PHPackages © 2026

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