A PHP experimentation library inspired by Github's own Scientist.

2.1.0 2018-04-07 19:39 UTC

This package is not auto-updated.

Last update: 2022-11-20 22:15:31 UTC




Build Status Scrutinizer Code Quality Code Coverage Code Climate

Packagist Version Packagist

A PHP experiment library inspired by Github's own Scientist.


Scientist is an experimentation framework for PHP that will allow you to refactor and improve upon existing code in a live environment, without incurring risk or breakages.

Simply define an experiment, sit back, and let the results flow in.


// We need a Laboratory to do science.
$experiment = (new Scientist\Laboratory)

    // Define an experiment with a name.
    ->experiment('experiment title')
    // Set a callback containing our control code.
    // Set a callback containing our trial code.
    ->trial('trial name', $trialCallback);

// Run the experiment, receiving the control return value.
$value = $experiment->run();

A more detailed description, and full documentation is available.

User Contributed Resources

Users of scientist contribute a variety of resources to enhance the functionality of the application.


Journals allow experiment data to be sent to data stores for later inspection.


Bridges allow for Scientist to be used seamlessly with other frameworks and libraries.


Matchers allow for complex types to be matched.


Interfaces allow for experiment data to be viewed in a clear way.