sandrokeil/interop-config
Framework-agnostic PHP library for configuration-driven factories. Validates config structure, merges defaults, enforces required options, reduces factory boilerplate, supports auto-discovery of factories, and can generate configuration files from factory classes.
You want to configure your factories?
You want to reduce your factory boilerplate code?
You want to check automatically for mandatory options or merge default options?
You want to have a valid config structure?
You want to generate your configuration files from factory classes?
This library comes to the rescue!
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.
You should have coding conventions and you should have config conventions. If not, you should think about that.
interop-config is universally applicable! See further documentation for more details.
The suggested installation method is via composer. For composer documentation, please refer to getcomposer.org.
Run composer require sandrokeil/interop-config to install interop-config. Version 1.x is for PHP < 7.1 and Version 2.x is for PHP >= 7.1.
For the latest online documentation visit http://sandrokeil.github.io/interop-config/. Refer the Quick Start section for a detailed explanation.
Documentation is in the doc tree, and can be compiled using bookdown or Docker
$ docker run -it --rm -v $(pwd):/app sandrokeil/bookdown doc/bookdown.json
$ docker run -it --rm -p 8080:8080 -v $(pwd):/app php:7.1-cli php -S 0.0.0.0:8080 -t /app/doc/html
or run bookdown
$ ./vendor/bin/bookdown doc/bookdown.json
$ php -S 0.0.0.0:8080 -t doc/html/
Then browse to http://localhost:8080/
This is a list of projects who are using interop-config interfaces (incomplete).
The benchmarks uses PHPBench and can be started by the following command:
$ ./vendor/bin/phpbench run -v --report=table
or with Docker
$ docker run --rm -it --volume $(pwd):/app prooph/php:7.1-cli-opcache php ./vendor/bin/phpbench run --report=table
You can use the group and filter argument to get only results for a specific group/filter.
These groups are available: perf, config, configId, mandatory, mandatoryRev and default
These filters are available: can, options and fallback
How can I help you explore Laravel packages today?