PHPackages                             codicastudio/tabs - 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. codicastudio/tabs

ActiveLibrary

codicastudio/tabs
=================

A random Codica Studio package.

1.0.0(5y ago)03MITPHPPHP ^7.4 || ^8.0CI failing

Since Sep 25Pushed 5y ago1 watchersCompare

[ Source](https://github.com/codicastudio/tabs)[ Packagist](https://packagist.org/packages/codicastudio/tabs)[ Docs](https://github.com/codicastudio/tabs)[ RSS](/packages/codicastudio-tabs/feed)WikiDiscussions master Synced 6d ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

Resource Navigation Tab
=======================

[](#resource-navigation-tab)

Organize your long pile of tables and relationships into structured pages.

[![Resource Navigation Tab in Action](https://raw.githubusercontent.com/dcasia/resource-navigation-tab/master/screenshots/demo-1.png)](https://raw.githubusercontent.com/dcasia/resource-navigation-tab/master/screenshots/demo-1.png)

Installation
============

[](#installation)

You can install the package via composer:

```
composer require digital-creative/resource-navigation-tab

```

Basic Usage
-----------

[](#basic-usage)

First, import `HasResourceNavigationTabTrait` trait into your resource and start grouping your fields with the `ResourceNavigationTab` object:

```
use DigitalCreative\ResourceNavigationTab\HasResourceNavigationTabTrait;
use DigitalCreative\ResourceNavigationTab\ResourceNavigationTab;

class ExampleNovaResource extends Resource {

    use HasResourceNavigationTabTrait; // Important!!

    public function fields(Request $request)
    {
        return [
            ResourceNavigationTab::make([
                'label' => 'Information',
                'behaveAsPanel' => true / false,
                'fields' => [
                    Text::make('Name'),
                    Text::make('Age'),
                    HasMany::make('Hobbies')
                ]
            ]),
            ResourceNavigationTab::make([ 'label' => 'Activities' ]),
            ResourceNavigationTab::make([ 'label' => 'Social Interactions' ]),
            ResourceNavigationTab::make([ 'label' => 'Settings' ]),
        ];
    }

}
```

Once setup navigate to your resource detail view, and you should be presented with this card:

[![Resource Navigation Tab in Action](https://raw.githubusercontent.com/dcasia/resource-navigation-tab/master/screenshots/demo-3.png)](https://raw.githubusercontent.com/dcasia/resource-navigation-tab/master/screenshots/demo-3.png)

By default the main resource table (the one with the edit/delete buttons) will have the same title as your tabs, however you can customize it by calling `->resourceTableTitle('Another title')`

```
public function fields(Request $request)
{
    return [
        ResourceNavigationTab::make([
            'label' => 'Tab Title',
            'resourceTableTitle' => 'Resource Table Title'
            'fields' => [...]
        ]),
    ];
}
```

Every defined card will be shown on every tab by default, however you can choose which card you want to show when a specific tab is selected:

```
use DigitalCreative\ResourceNavigationTab\HasResourceNavigationTabTrait;
use DigitalCreative\ResourceNavigationTab\ResourceNavigationTab;
use DigitalCreative\ResourceNavigationTab\CardMode;

class ExampleNovaResource extends Resource {

    public function fields(Request $request)
    {
        return [
            ResourceNavigationTab::make([ 'label' => 'Profile' ]), // show all the available cards by default
            ResourceNavigationTab::make([
                'label' => 'Activities',
                'cardMode' => CardMode::KEEP_ALL | CardMode::EXCLUDE_ALL // show all or remove all cards when this tab is active
            ]),
            ResourceNavigationTab::make([
                'label' => 'Preferences',
                'cardMode' => CardMode::ONLY | CardMode::EXCEPT // show or remove only the selected cards
                'cards' => [
                   ClientPerformanceCard::class,
                   ClientProfileCard::class,
                ]
            ]),
        ];
    }

    public function cards(Request $request)
    {
        return [
            new ClientPerformanceCard(),
            new DailySalesCard(),
            new ClientProfileCard()
        ];
    }

}
```

License
-------

[](#license)

The MIT License (MIT). Please see [License File](https://raw.githubusercontent.com/dcasia/resource-navigation-tab/master/LICENSE) for more information.

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

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

2060d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/4a33b354bea681b74be49f37bbe9f3c4f145dbefe0f2b5cbb705b0731bf13fd3?d=identicon)[codicastudio](/maintainers/codicastudio)

### Embed Badge

![Health badge](/badges/codicastudio-tabs/health.svg)

```
[![Health](https://phpackages.com/badges/codicastudio-tabs/health.svg)](https://phpackages.com/packages/codicastudio-tabs)
```

PHPackages © 2026

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