Today I released a new package called laravel-fractal. It provides a Fractal service provider for Laravel. If you don't know what Fractal does, take a peek at their intro. Shortly said, Fractal is very useful to transform data before using it in an API.

Using Fractal data can be transformed like this:

use League \ Fractal \ Manager ; use League \ Fractal \ Resource \ Collection ; $fractal = new Manager(); $books = [[ 'id' => 1 , 'title' => 'Hogfather' ], [ 'id' => 2 , 'title' => 'Game Of Kill Everyone' ]]; $resource = new Collection($books, new BookTransformer()); $array = $fractal->createData($resource)->toArray();

The laravel-fractal package makes that process a tad easier:

fractal() ->collection($books) ->transformWith( new BookTransformer()) ->toArray();

The package has support for Fractal's serializers. All available options are explained in the readme.

If you like this package, take a look at the other Laravel packages our team has previously released.