PHPackages                             zloynick/joole-containers - 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. zloynick/joole-containers

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

zloynick/joole-containers
=========================

v8.1.3(4y ago)0231GPL-3.0+PHPPHP 8.1.\*

Since Apr 26Pushed 4y ago1 watchersCompare

[ Source](https://github.com/ZloyNick/joole-containers)[ Packagist](https://packagist.org/packages/zloynick/joole-containers)[ RSS](/packages/zloynick-joole-containers/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (1)Versions (3)Used By (1)

Joole Containers
================

[](#joole-containers)

**Joole Containers** is a library for storing objects. At its core, it is an implementation of PSR-12 and its complement.

Getting started
---------------

[](#getting-started)

- Install it with using composer:

`composer require zloynick/joole-containers`Using
-----

[](#using)

- Create a container object:

```

use joole\containers\Container;

$container = new Container();
...

```

- Register your object to created container:

```
...
class MyCustomPeople{

    private string $age;
    private string $name;

    public function __construct(
        $name,
        $age
    )
    {
        $this->name = $name;
        $this->age = $age;
    }

    public function getName(): string
    {
        return $this->name;
    }

}

$container->register(MyCustomPeople::class, ['name' => 'Alex', 'age' => 22]);
...
```

Now we can use the object from the container

```

...
echo $container->get(MyCustomPeople::class)->getName();// Alex
...

```

Addition functional
-------------------

[](#addition-functional)

- You can get number of object in container: `$count = count($container);`
- Multiple push:

```

$container->multiplePush(['param1' => [1, 2, 3], 'param2' => new stdClass()], Class1::class, Class2::class);

```

**Note:** *the keys of the array of parameters must correspond to the name of the variables of the constructor classthe keys of the array of parameters must correspond to the name of the variables of the constructor class.*

###  Health Score

26

—

LowBetter than 41% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity58

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

Total

2

Last Release

1528d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/cff51652283bc946a839f9f084ba4a69c6917191c48b83412dab6ffc6e5dc472?d=identicon)[ZloyNick](/maintainers/ZloyNick)

---

Top Contributors

[![ZloyNick](https://avatars.githubusercontent.com/u/23015694?v=4)](https://github.com/ZloyNick "ZloyNick (2 commits)")

---

Tags

componentcontainersjoole

### Embed Badge

![Health badge](/badges/zloynick-joole-containers/health.svg)

```
[![Health](https://phpackages.com/badges/zloynick-joole-containers/health.svg)](https://phpackages.com/packages/zloynick-joole-containers)
```

###  Alternatives

[symfony/dependency-injection

Allows you to standardize and centralize the way objects are constructed in your application

4.2k455.6M9.5k](/packages/symfony-dependency-injection)[illuminate/contracts

The Illuminate Contracts package.

706130.3M13.2k](/packages/illuminate-contracts)[illuminate/container

The Illuminate Container package.

31182.0M2.3k](/packages/illuminate-container)[ecotone/ecotone

Enterprise architecture layer for Laravel and Symfony — CQRS, Event Sourcing, Durable Workflows (Sagas, Orchestrators), Projections, and Outbox messaging via PHP attributes.

564576.7k49](/packages/ecotone-ecotone)[symfony/type-info

Extracts PHP types information.

20069.8M267](/packages/symfony-type-info)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

751291.4k40](/packages/civicrm-civicrm-core)

PHPackages © 2026

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