PHPackages                             nick-jones/simpleconfig - 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. [PSR &amp; Standards](/categories/psr-standards)
4. /
5. nick-jones/simpleconfig

ActiveLibrary[PSR &amp; Standards](/categories/psr-standards)

nick-jones/simpleconfig
=======================

A basic configuration container class

v0.1(12y ago)0149MITPHPPHP &gt;=5.4

Since Feb 6Pushed 12y ago1 watchersCompare

[ Source](https://github.com/nick-jones/simple-config)[ Packagist](https://packagist.org/packages/nick-jones/simpleconfig)[ RSS](/packages/nick-jones-simpleconfig/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (1)Versions (2)Used By (0)

SimpleConfig
============

[](#simpleconfig)

SimpleConfig is a basic configuration container, for PHP.

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

[](#installation)

To pull down dependencies and check version compatibility you will need to run [composer](http://getcomposer.org) in the project root.

Usage
-----

[](#usage)

Values and factories can be provided in the constructor:

```
$container = new \SimpleConfig\Container(
    [
        'field1' => 'value',
        // etc
    ],
    [
        'field2' => function() {
            return new Foo();
        }
    ]
);
```

Alternatively, `offsetSet` and `factory` can be used to add values and factories respectively.

The `Container` class implements `ArrayAccess`, so values can simply be accessed using array syntax, e.g.

```
echo $container['field1']; // prints "value"
```

Factories are invoked once on field fetch, with the resulting value being cached for future use. Factories can retrieve other values from the container by simply utilising `$this`, e.g.

```
$container->factory('foo', function() {
    $class = $this['foo.class'];
    return new $class();
});
```

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity48

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

4479d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/759dcc9fc48dd4d80afbca495caef56504bcbe4a69ff696ab16e7f1fe57a74c5?d=identicon)[nick-jones](/maintainers/nick-jones)

---

Top Contributors

[![nick-jones](https://avatars.githubusercontent.com/u/350792?v=4)](https://github.com/nick-jones "nick-jones (10 commits)")

---

Tags

containerconfigurationconfig

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/nick-jones-simpleconfig/health.svg)

```
[![Health](https://phpackages.com/badges/nick-jones-simpleconfig/health.svg)](https://phpackages.com/packages/nick-jones-simpleconfig)
```

###  Alternatives

[psr/container

Common Container Interface (PHP FIG PSR-11)

10.0k1.0B3.7k](/packages/psr-container)[pimple/pimple

Pimple, a simple Dependency Injection Container

2.7k130.5M1.4k](/packages/pimple-pimple)[php-di/php-di

The dependency injection container for humans

2.8k48.9M994](/packages/php-di-php-di)[league/container

A fast and intuitive dependency injection container.

86387.8M343](/packages/league-container)[sandrokeil/interop-config

Provides interfaces and a concrete implementation to create instances depending on configuration via factory classes and ensures a valid config structure. It can also be used to auto discover factories and to create configuration files.

58446.7k34](/packages/sandrokeil-interop-config)[michaels/data-manager

Simple data manager for nested data, dot notation array access, extendability, and container interoperability.

121.9k2](/packages/michaels-data-manager)

PHPackages © 2026

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