PHPackages                             venom/system-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. venom/system-settings

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

venom/system-settings
=====================

A laravel module that will handle system settings for your application.

v1.0.3(3mo ago)1482MITPHP

Since Aug 27Pushed 3mo agoCompare

[ Source](https://github.com/VEN-LANG/system-settings-library)[ Packagist](https://packagist.org/packages/venom/system-settings)[ RSS](/packages/venom-system-settings/feed)WikiDiscussions main Synced today

READMEChangelog (2)Dependencies (10)Versions (6)Used By (0)

Venom System Settings Library
=============================

[](#venom-system-settings-library)

This package provides a robust service and model for application settings, plus helpers, a facade, and a registry for module definitions. It’s designed to plug into multi-module apps.

What’s included
---------------

[](#whats-included)

- Service: `Venom\SystemSettings\Services\SystemSettingsService`
- Model: `Venom\SystemSettings\Models\SystemSettings`
- Facade: `Venom\SystemSettings\Facades\Settings`
- Helpers: `settings()` and `setting()`
- Registry: `Venom\SystemSettings\Support\SettingsRegistry`
- Provider auto-registered via Composer

Integration in your module (Ignite)
-----------------------------------

[](#integration-in-your-module-ignite)

1. Use the model subclass (example):

    - See `src/Stubs/Ignite/Settings/Models/GeneralSettings/Settings.php`:
        - Extends the library model.
        - Uses `config('system_settings.table_name', 'system_settings')`.
2. Use the service subclass (example):

    - See `src/Stubs/Ignite/Settings/Services/GeneralSettings/SettingsService.php`:
        - Extends the library service and only injects the model.
        - No overrides needed; you get methods: `all`, `get`, `set`, `setMany`, `delete`, `clearCache`, `getByCategory`.
3. Configure (optional):

    - In `config/system_settings.php`, you may set:
        - `'model' => Ignite\Settings\Models\GeneralSettings\Settings::class`
        - `'service' => Ignite\Settings\Services\GeneralSettings\SettingsService::class`
4. Helpers and facade:

    - `setting('organization_name')` to fetch a single value.
    - `settings()->setMany([...])` for batch updates.
    - Facade `Venom\SystemSettings\Facades\Settings` resolves `settings` binding.
5. Definitions format

    - See `src/Stubs/Modules/Settings/definitions.php` for corrected examples.
    - For file fields with a custom rule, use:
        - `'validation' => ['nullable', new ImageOrString(), 'max:2048']`
6. Registry

    - The provider scans `Modules/*/app/Settings/definitions.php` and registers them in `settings.registry`. You can query it via `app('settings.registry')`.

Dev notes
---------

[](#dev-notes)

- After updating composer.json, run `composer dump-autoload`.
- The service handles file uploads and deletes old files in `public/uploads/settings` by default.
- The model supports types: `string`, `integer`, `boolean`, `float`, `number` (as float), `array`, `json`.

###  Health Score

40

—

FairBetter than 86% of packages

Maintenance82

Actively maintained with recent releases

Popularity16

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity44

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 97.2% 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 ~192 days

Total

4

Last Release

96d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/132094?v=4)[venom](/maintainers/venom)[@Venom](https://github.com/Venom)

---

Top Contributors

[![venomous-maker](https://avatars.githubusercontent.com/u/72166424?v=4)](https://github.com/venomous-maker "venomous-maker (70 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")[![kemboi22](https://avatars.githubusercontent.com/u/85908528?v=4)](https://github.com/kemboi22 "kemboi22 (1 commits)")

### Embed Badge

![Health badge](/badges/venom-system-settings/health.svg)

```
[![Health](https://phpackages.com/badges/venom-system-settings/health.svg)](https://phpackages.com/packages/venom-system-settings)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M346](/packages/psalm-plugin-laravel)[laravel/scout

Laravel Scout provides a driver based solution to searching your Eloquent models.

1.7k55.0M619](/packages/laravel-scout)[illuminate/broadcasting

The Illuminate Broadcasting package.

7127.2M208](/packages/illuminate-broadcasting)[flarum/core

Delightfully simple forum software.

201.4M2.3k](/packages/flarum-core)[illuminate/events

The Illuminate Events package.

13557.0M2.1k](/packages/illuminate-events)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k15.1M130](/packages/laravel-pulse)

PHPackages © 2026

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