Fractal module for the Lumen PHP framework.
Run the following command to install the package through Composer:
composer require nordsoftware/lumen-fractal
Copy the configuration template in config/fractal.php
to your application's config
directory and modify according to your needs.
For more information see the Configuration Files section in the Lumen documentation.
Available configuration options:
- default_serializer - Default serializer to use for serialization, defaults to null
Add the following lines to bootstrap/app.php
:
$app->register('Nord\Lumen\Fractal\FractalServiceProvider');
Optionally you can also use Nord\Lumen\Fractal\FractalMiddleware
to parse includes automatically from the request.
$app->middleware([
.....
'Nord\Lumen\Fractal\Middleware\FractalMiddleware',
]);
You can now use Nord\Lumen\Fractal\FractalService
to access Fractal anywhere in your application.
Here is a few examples on how you can serialize data if you are using Eloquent:
public function getBook(FractalService $fractal, $id) {
// load the book model ...
return response()->json($fractal->item($book, new BookTransformer)->toArray());
}
public function listBooks(FractalService $fractal) {
// load the book collection ...
return response()->json($fractal->collection($books, new BookTransformer)->toArray());
}
Please read the guidelines.
Clone the project and install its dependencies by running:
composer install
Run the following command to run the test suite:
vendor/bin/codecept run unit
MIT, see LICENSE.