PHPackages                             andreasgj/nova-settings-tool - 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. andreasgj/nova-settings-tool

ActiveLibrary

andreasgj/nova-settings-tool
============================

A Laravel Nova tool to manage application settings.

v1.0.5(5y ago)33.5kMITPHPPHP &gt;=7.1.0

Since Jan 14Pushed 5y agoCompare

[ Source](https://github.com/AndreasGJ/nova-settings-tool)[ Packagist](https://packagist.org/packages/andreasgj/nova-settings-tool)[ Docs](https://github.com/AndreasGJ/nova-settings-tool)[ RSS](/packages/andreasgj-nova-settings-tool/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (4)Versions (19)Used By (0)

Laravel Nova tool to manage app settings
========================================

[](#laravel-nova-tool-to-manage-app-settings)

[![Latest Version on Packagist](https://camo.githubusercontent.com/854b22621314c841864d10f102eff2cc13503b8fab80728aa92c1eac566a05a0/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f416e6472656173676a2f6e6f76612d73657474696e67732d746f6f6c2e7376673f7374796c653d666c6174)](https://packagist.org/packages/Andreasgj/nova-settings-tool)[![Total Downloads](https://camo.githubusercontent.com/45663cc9fd768d39a15dc8af5d277cc8e942b9c122adaf34d7d4a072aafa7e95/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f416e6472656173676a2f6e6f76612d73657474696e67732d746f6f6c2e7376673f7374796c653d666c6174)](https://packagist.org/packages/Andreasgj/nova-settings-tool)[![Build](https://github.com/Andreasgj/nova-settings-tool/workflows/CI/badge.svg)](https://github.com/Andreasgj/nova-settings-tool/actions)[![StyleCI](https://camo.githubusercontent.com/a9356aaa853e33bd68f1f42b8b6eae3f2693b9b7ea605ae27c0e6ec928326802/68747470733a2f2f6769746875622e7374796c6563692e696f2f7265706f732f3136353137383031302f736869656c643f6272616e63683d6d6173746572267374796c653d666c6174)](https://github.styleci.io/repos/165178010)[![License: MIT](https://camo.githubusercontent.com/59497bc4563dd468e37bbf539439e60cacf196f537f678b721a8efabf21c64ef/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d626c75652e7376673f7374796c653d666c6174)](https://opensource.org/licenses/MIT)

Store and edit simple app-wide settings right in Nova. Settings are stored as JSON using [`spatie/valuestore`](https://github.com/spatie/valuestore), making them really easy to [pull in and use everywhere else in your app](https://laravel-news.com/global-application-settings).

[![Settings Tool screenshot](settings-tool.png)](settings-tool.png)

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

[](#installation)

Install the package via Composer in any Laravel app using [Nova](https://nova.laravel.com):

```
composer require andreasgj/nova-settings-tool
```

Publish the default configuration file to `config/nova-settings-tool.php`:

```
php artisan vendor:publish --tag="nova-settings-tool"
```

Register the tool with Nova in the `tools` method of your `NovaServiceProvider`:

```
// in app/Providers/NovaServiceProvider.php

use Andreasgj\NovaSettingsTool\SettingsTool;

    // ...

    public function tools()
    {
        return [
            new SettingsTool,
        ];
    }
```

Usage
-----

[](#usage)

Settings are declared in a `nova-settings-tool.php` config file. This file specifies where settings are stored, what the tool’s title is in Nova’s sidebar, the layout of the settings page, and metadata about the settings themselves.

A [default config file with some helpful examples](config/nova-settings-tool.php) is included as a starting point:

Each item in the `panels` array is a panel which contains Nova’s fields. Panels can also shown as a sidebar instead, so if you have a lot of settings, then you don't need to scroll through it all.

[![Settings Tool in accordion mode screenshot](settings-tool-accordion.png)](settings-tool-accordion.png)

The settings’ actual values are stored as JSON at the location specified in the config file—`storage/app/settings.json` by default.

You can use all the Nova fields which isn't a relationship field **except**:

- Badge - Seems like it needs a relationship to a resource.
- Boolean Group - Seems like it needs a relationship to a resource.
- Gravatar - Needs a relationship with a resource.
- ID - Needs a relationship with a resource.

All strings in this package, and any you pass to it, can easily be translated using [Laravel’s built-in localization features](https://laravel.com/docs/localization#using-translation-strings-as-keys).

Get the stored configs?
-----------------------

[](#get-the-stored-configs)

We have now added a simple way to get the configs you need. Here is the following global functions you can use:

```
/**
 * This function will return key value of the configs specified in the $keys array.
 */
function get_store_configs(array $keys = []): Object

/**
 * This function will return the value of the config specified in the $key string.
 */
function get_store_config(string $key): mix

/**
 * This function will return Laravel\Nova\Fields\Field of the config specified in the $attribute string.
 */
function get_store_config_field(string $attribute): Laravel\Nova\Fields\Field

/**
 * This function will return a collection of all the fields setup in the config file.
 */
function get_store_config_fields(): collect

/**
 * This function will return a collection of all the panels setup in the config file.
 */
function get_store_config_panels(): collect

```

Roadmap
-------

[](#roadmap)

The following features are planned or in development:

- ?

---

[CHANGELOG](CHANGELOG.md) • [CONTRIBUTING](CONTRIBUTING.md) • [LICENSE](LICENSE.md)

###  Health Score

33

—

LowBetter than 74% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity24

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 70.6% 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 ~33 days

Recently: every ~63 days

Total

18

Last Release

2113d ago

Major Versions

0.2.4 → 1.0.x-dev2019-09-29

### Community

Maintainers

![](https://www.gravatar.com/avatar/5539e95c5d81bf23ff53c776d9fccbc1630e5b72d7cde2441c4020c8c05f73b4?d=identicon)[AndreasGJ](/maintainers/AndreasGJ)

---

Top Contributors

[![bakerkretzmar](https://avatars.githubusercontent.com/u/18192441?v=4)](https://github.com/bakerkretzmar "bakerkretzmar (48 commits)")[![AndreasGJ](https://avatars.githubusercontent.com/u/4068425?v=4)](https://github.com/AndreasGJ "AndreasGJ (15 commits)")[![FabioWidmer](https://avatars.githubusercontent.com/u/6362414?v=4)](https://github.com/FabioWidmer "FabioWidmer (2 commits)")[![bomshteyn](https://avatars.githubusercontent.com/u/4259699?v=4)](https://github.com/bomshteyn "bomshteyn (1 commits)")[![jonassiewertsen](https://avatars.githubusercontent.com/u/38906163?v=4)](https://github.com/jonassiewertsen "jonassiewertsen (1 commits)")[![MarceauKa](https://avatars.githubusercontent.com/u/1665333?v=4)](https://github.com/MarceauKa "MarceauKa (1 commits)")

---

Tags

laravelSettingstoolnova

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/andreasgj-nova-settings-tool/health.svg)

```
[![Health](https://phpackages.com/badges/andreasgj-nova-settings-tool/health.svg)](https://phpackages.com/packages/andreasgj-nova-settings-tool)
```

###  Alternatives

[bakerkretzmar/nova-settings-tool

A Laravel Nova tool to manage application settings.

164212.2k](/packages/bakerkretzmar-nova-settings-tool)[outl1ne/nova-settings

A Laravel Nova tool for editing custom settings using native Nova fields.

296883.2k3](/packages/outl1ne-nova-settings)[optimistdigital/nova-settings

A Laravel Nova tool for editing custom settings using native Nova fields.

297874.5k3](/packages/optimistdigital-nova-settings)[oneduo/nova-file-manager

A handy file manager tool for Laravel Nova

157350.3k2](/packages/oneduo-nova-file-manager)[runlinenl/nova-profile-tool

A tool for Laravel Nova to allow users to edit their profile data

37217.5k](/packages/runlinenl-nova-profile-tool)[bbs-lab/nova-file-manager

A handy file manager tool for Laravel Nova

1578.0k](/packages/bbs-lab-nova-file-manager)

PHPackages © 2026

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