PHPackages                             visual-ideas/laravel-seoable - 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. [Database &amp; ORM](/categories/database)
4. /
5. visual-ideas/laravel-seoable

ActiveLibrary[Database &amp; ORM](/categories/database)

visual-ideas/laravel-seoable
============================

Easy Laravel nested settings (stored in MYSQL) package with MoonShine Laravel Admin GUI

0.0.1(3y ago)013MITPHPPHP ^8.1

Since Jan 26Pushed 3y ago1 watchersCompare

[ Source](https://github.com/visual-ideas/laravel-seoable)[ Packagist](https://packagist.org/packages/visual-ideas/laravel-seoable)[ Docs](https://github.com/visual-ideas/laravel-seoable)[ RSS](/packages/visual-ideas-laravel-seoable/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (1)Versions (2)Used By (0)

Easy laravel cached settings
============================

[](#easy-laravel-cached-settings)

Easy laravel cached settings (stored in MYSQL) package with MoonShine Laravel Admin GUI

[![Latest Version on Packagist](https://camo.githubusercontent.com/05f994a59623cc9b3a3903f6e92d8f5cd7cbf2ba0cce3f2e8786c6f01baa9408/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f76697375616c2d69646561732f6c61726176656c2d73656f61626c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/visual-ideas/laravel-seoable)[![Total Downloads](https://camo.githubusercontent.com/50a3b1eb0910bcba41e61516a91cd701d8b68053c1c150c0ba93ffe674cb9f5e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f76697375616c2d69646561732f6c61726176656c2d73656f61626c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/visual-ideas/laravel-seoable)

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

[](#installation)

You can install the package via composer:

```
composer require visual-ideas/laravel-seoable
```

You must run the migrations with:

```
php artisan migrate
```

You can publish the config file with:

```
php artisan vendor:publish --provider="VI\LaravelSeoable\LaravelSeoableProvider" --tag="config"
```

This is the contents of the published config file:

```
return [
    'cache_key' => env('LSS_CACHE_KEY','laravel_site_settings_data'),
];
```

Usage
-----

[](#usage)

You can use this package as default laravel config() function!

```
function settings($key = null, $default = null)
{
    if (is_null($key)) {
        return app('Settings')->all();
    }

    if (is_array($key)) {
        return app('Settings')->set($key);
    }

    return app('Settings')->get($key, $default);
}
```

or Blade directive @settings

```
@settings('group.setting')
```

For PHPStorm you can set this blade directive with [This instruction](https://www.jetbrains.com/help/phpstorm/blade-page.html)

or as part of native Laravel config()

```
@config('settings.group.setting')
```

**Not working in console!**

Update settings
---------------

[](#update-settings)

You can use models VI\\LaravelSeoable\\Models\\SettingGroup and VI\\LaravelSeoable\\Models\\Setting

or set settings values with the settings() function:

```
settings(['group.setting' => 'Value']);
settings(['setting' => 'Value']);
```

Usage with MoonShine Laravel Admin
----------------------------------

[](#usage-with-moonshine-laravel-admin)

Please see [MoonShine](https://moonshine.cutcode.ru/)

You can publish two [MoonShine Resources](https://moonshine.cutcode.ru/resources-index) with command:

```
php artisan vendor:publish --provider="VI\LaravelSeoable\LaravelSeoableProvider" --tag="moonshine"
```

and use them in your MoonShine admin panel, like this:

```
MenuGroup::make('Settings', [
    MenuItem::make('Settings', SettingResource::class)->icon('app'),
    MenuItem::make('Settings groups', SettingGroupResource::class)->icon('app'),
])->icon('app'),
```

Seeding settings
----------------

[](#seeding-settings)

I recommend saving the settings in the seeders using the [orangehill/iseed](https://github.com/orangehill/iseed) package:

```
php artisan iseed setting_groups,settings
```

But you can use seeder or migration to set your settings

```
settings([
    ['group.setting1' => 'Value1'],
    ['group.setting2' => 'Value2'],
    ['group.setting3' => 'Value3'],
    ['setting1' => 'Value4'],
    ['setting2' => 'Value5'],
    ['setting3' => 'Value6'],
    ['setting4' => 'Value7'],
    ['setting5' => 'Value8']
]);
```

Credits
-------

[](#credits)

- [Alex](https://github.com/alexvenga)

License
-------

[](#license)

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

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity44

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

1254d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/12836836?v=4)[AlexVenga](/maintainers/AlexVenga)[@alexvenga](https://github.com/alexvenga)

---

Top Contributors

[![alexvenga](https://avatars.githubusercontent.com/u/12836836?v=4)](https://github.com/alexvenga "alexvenga (3 commits)")

---

Tags

phplaravelSettingspackagemysqlseomoonshineVisualIdeasseoable

### Embed Badge

![Health badge](/badges/visual-ideas-laravel-seoable/health.svg)

```
[![Health](https://phpackages.com/badges/visual-ideas-laravel-seoable/health.svg)](https://phpackages.com/packages/visual-ideas-laravel-seoable)
```

###  Alternatives

[leantime/leantime

Open source project management system for non-project managers. Simple like Trello, powerful like Jira. Built with neurodiversity in mind.

10.2k3.5k](/packages/leantime-leantime)[anourvalar/eloquent-serialize

Laravel Query Builder (Eloquent) serialization

11223.5M33](/packages/anourvalar-eloquent-serialize)[awssat/laravel-sync-migration

Laravel tool helps to sync migrations without refreshing the database

10823.4k](/packages/awssat-laravel-sync-migration)[visual-ideas/moonshine-spatie-medialibrary

Spatie\\MediaLibrary field for MoonShine Laravel admin panel

2017.7k](/packages/visual-ideas-moonshine-spatie-medialibrary)[watheqalshowaiter/model-fields

Get model fields fast — required, nullable, or default

402.1k](/packages/watheqalshowaiter-model-fields)[ramadan/easy-model

A Laravel package for enjoyably managing database queries.

111.6k](/packages/ramadan-easy-model)

PHPackages © 2026

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