PHPackages                             subham/filament-dynamic-settings - 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. subham/filament-dynamic-settings

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

subham/filament-dynamic-settings
================================

Dynamic settings plugin for Filament

v3.1.0(2mo ago)91.7k↓74.4%1MITPHPPHP &gt;=8.2

Since Aug 16Pushed 2mo agoCompare

[ Source](https://github.com/subhamsharmaa/filament-dynamic-settings)[ Packagist](https://packagist.org/packages/subham/filament-dynamic-settings)[ RSS](/packages/subham-filament-dynamic-settings/feed)WikiDiscussions main Synced yesterday

READMEChangelog (3)Dependencies (12)Versions (15)Used By (0)

Filament Dynamic Settings Package
=================================

[](#filament-dynamic-settings-package)

A flexible Laravel package for managing dynamic settings in Filament admin panels with support for both single-tenant and multi-tenant applications.

Features
--------

[](#features)

- **Flexible Tenancy**: Works with both single-tenant and multi-tenant applications
- **Custom Components**: Extensible system for custom field types
- **Dynamic Field Resolution**: Automatic component resolution based on field types
- **Module Organization**: Organize settings into logical modules
- **Multiple Layouts**: Support for tabs and section layouts
- **Type Safety**: Automatic type casting for different field types

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

[](#installation)

```
composer require subham/filament-dynamic-settings
php artisan filament-dynamic-settings install
```

Filament Compatibility
----------------------

[](#filament-compatibility)

VersionFilament Version`main`Filament v5`^2.x`Filament v4`^1.x`Filament v3Ensure that you are using the correct version of this package that is compatible with your Filament installation

Setting Resource Image
----------------------

[](#setting-resource-image)

[![Settings](art/settings.png)](art/settings.png)

Manage Setting Page Image (Tab/Section)
---------------------------------------

[](#manage-setting-page-image-tabsection)

[![Manage Settings](art/manage-setting.png)](art/manage-setting.png)

Configuration
-------------

[](#configuration)

### Single Tenant Setup

[](#single-tenant-setup)

```
// config/filament-dynamic-settings.php
return [
    'multi_tenant' => false,
    // ... other config
];
```

### Multi-Tenant Setup

[](#multi-tenant-setup)

```
// config/filament-dynamic-settings.php
return [
    'multi_tenant' => true,
    'tenant_model' => App\Models\Tenant::class,
    'tenant_column' => 'tenant_id',
    // ... other config
];
```

Layout Configuration
--------------------

[](#layout-configuration)

This package allows you to customize the layout behavior of dynamic Filament forms.

You can control how **tabs** and **sections** are rendered using configuration options.

---

### Tabs Layout

[](#tabs-layout)

Configure how tabs are displayed in your forms.

```
'tabs_layout' => [
    'vertical_tab' => false,
    'contained' => true,
],
```

OptionTypeDefaultDescriptionvertical\_tabboolfalseDisplay tabs in vertical orientationcontainedbooltrueWrap tabs inside a container layoutSections Layout
---------------

[](#sections-layout)

This package allows you to control how **form sections** are rendered in Filament dynamic forms.

You can adjust layout behavior using the `sections_layout` configuration.

---

### Configuration

[](#configuration-1)

```
'sections_layout' => [
    'aside' => false,
    'collapsible' => false,
],
```

OptionTypeDefaultDescriptionasideboolfalseDisplays the section in an aside (side column) layoutcollapsibleboolfalseEnables collapsing/expanding of sectionsUsage
-----

[](#usage)

### Basic Usage

[](#basic-usage)

```
use Subham\FilamentDynamicSettings\Facades\Settings;

// Get a setting (cached, with type formatting)
$value = Settings::get('app_name', 'general', 'Default App Name');

// Get a raw setting value (no cache, no formatting)
$raw = Settings::raw('app_name', 'general', 'Default App Name');

// Set a setting value (updates existing, invalidates cache)
Settings::set('app_name', 'My Application', 'general');

// Get all settings for a module
$allGeneral = Settings::module('general');

// In multi-tenant mode (tenant ID is auto-detected)
$value = Settings::get('app_name', 'general', 'Default App Name');

// Explicitly specify tenant
$value = Settings::get('app_name', 'general', 'Default App Name', $tenantId);
```

### Blade Directives for Filament Dynamic Settings

[](#blade-directives-for-filament-dynamic-settings)

```
@setting('key_name','module_name','default_value','tenant');
@rawsetting('key_name','module_name','default_value','tenant');

```

```

@setting('site_title', 'general', 'My Website')

    @rawsetting('footer_html', 'content', 'Default footer')

```

Use @setting for user-generated content. Only use @rawsetting when you need to output trusted HTML content.

### Creating Custom Components

[](#creating-custom-components)

#### 1. Register in Config

[](#1-register-in-config)

```
// config/filament-dynamic-settings.php
'custom_components' => [
    'color_picker' => [
        'component' => YourCustomComponent::class,
        'label' => 'Label for your component',
        'description' => 'Description..',
    ],
],
```

### Advanced Multi-Tenant Usage

[](#advanced-multi-tenant-usage)

#### Custom Tenant Resolution

[](#custom-tenant-resolution)

If you need custom tenant resolution logic, you can extend the Setting model:

```
namespace App\Models;

use Subham\FilamentDynamicSettings\Models\Setting as BaseSetting;

class Setting extends BaseSetting
{
    protected static function getCurrentTenantId()
    {
        if (auth()->check() && auth()->user()->currentTeam) {
            return auth()->user()->currentTeam->id;
        }

        return parent::getCurrentTenantId();
    }
}
```

License
-------

[](#license)

This package is open-sourced software licensed under the [MIT license](LICENSE.md).

Changelog
---------

[](#changelog)

See the changelog for details on changes made in each version.

Contributing
------------

[](#contributing)

Contributions are welcome! Please create a pull request or open an issue if you find any bugs or have feature requests.

Support
-------

[](#support)

If you find this package useful, please consider starring the repository on GitHub to show your support.

###  Health Score

48

—

FairBetter than 93% of packages

Maintenance88

Actively maintained with recent releases

Popularity26

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity56

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 ~26 days

Recently: every ~12 days

Total

11

Last Release

62d ago

Major Versions

v1.0.0 → v2.0.02025-08-23

v1.0.1 → v2.1.02026-03-08

v2.1.0 → 4.x-dev2026-03-13

2.x-dev → v3.0.02026-03-13

PHP version history (2 changes)v1.0.0PHP &gt;=8.1

4.x-devPHP &gt;=8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/6d7e748c8040eaea80037de84fdf6bfb16fde753eb81cf08ba85d1b42c58515d?d=identicon)[ssuvam-dev](/maintainers/ssuvam-dev)

---

Top Contributors

[![subhamsharmaa](https://avatars.githubusercontent.com/u/86038239?v=4)](https://github.com/subhamsharmaa "subhamsharmaa (19 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/subham-filament-dynamic-settings/health.svg)

```
[![Health](https://phpackages.com/badges/subham-filament-dynamic-settings/health.svg)](https://phpackages.com/packages/subham-filament-dynamic-settings)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M346](/packages/psalm-plugin-laravel)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3914.6k](/packages/rawilk-profile-filament-plugin)[stephenjude/filament-jetstream

A Laravel starter kit built with Filament inspired by Jetstream.

17760.2k3](/packages/stephenjude-filament-jetstream)[stephenjude/filament-debugger

About

104162.2k2](/packages/stephenjude-filament-debugger)[creagia/filament-code-field

A Filamentphp input field to edit or view code data.

57307.1k3](/packages/creagia-filament-code-field)[saade/filament-adjacency-list

A Filament package to adjacency lists.

9766.6k5](/packages/saade-filament-adjacency-list)

PHPackages © 2026

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