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.0.0(2mo ago)71.3k↓50%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 1mo ago

READMEChangelog (2)Dependencies (9)Versions (10)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`^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',
    'tenant_relation => 'tenant"
    // ... other config
];
```

Usage
-----

[](#usage)

### Basic Usage

[](#basic-usage)

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

// Get a setting
$value = Setting::get('app_name', 'general', 'Default App Name');

// Set a setting
Setting::set('app_name', 'My Application', 'general');

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

// Explicitly specify tenant
$value = Setting::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

47

—

FairBetter than 94% of packages

Maintenance86

Actively maintained with recent releases

Popularity26

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity54

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

Recently: every ~50 days

Total

6

Last Release

66d ago

Major Versions

v1.0.0 → v2.0.02025-08-23

v1.0.1 → v2.1.02026-03-08

v2.1.0 → v3.0.02026-03-13

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

v3.0.0PHP &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 (12 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

[guava/calendar

Adds support for vkurko/calendar to Filament PHP.

298241.0k3](/packages/guava-calendar)[pboivin/filament-peek

Full-screen page preview modal for Filament

253319.6k12](/packages/pboivin-filament-peek)[dotswan/filament-map-picker

Easily pick and retrieve geo-coordinates using a map-based interface in your Filament applications.

124139.3k2](/packages/dotswan-filament-map-picker)[creagia/filament-code-field

A Filamentphp input field to edit or view code data.

58289.3k3](/packages/creagia-filament-code-field)[swisnl/filament-backgrounds

Beautiful backgrounds for Filament auth pages

54149.2k6](/packages/swisnl-filament-backgrounds)[hydrat/filament-table-layout-toggle

Filament plugin adding a toggle button to tables, allowing user to switch between Grid and Table layouts.

6292.3k1](/packages/hydrat-filament-table-layout-toggle)

PHPackages © 2026

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