dropelikeit/laravel-responsefactory

A nice answer factory for Laravel based on the jms/serializer
1,804 3
Install
composer require dropelikeit/laravel-responsefactory
Latest Version:v2.1.1
PHP:^8.3|^8.4|^8.5
License:MIT
Last Updated:Jul 1, 2026
Links: GitHub  ·  Packagist
Maintainer: Dropelikeit

Library tester Coverage Status PHP Version Require Monthly Downloads Daily Downloads Total Downloads Latest Stable Version License composer.lock Mutation testing badge

ResponseFactory for Laravel

The ResponseFactory is a successor to the laravel-jms-serializer package that focused on this. Using the JMS serializer within the ResponseFactory to create Laravel responses and thus remain in the OOP environment and not use functions or own response objects within the controller. In addition, it should be ensured that everything is processed in an object-oriented manner up to the output.

JMS-Serializer: https://github.com/schmittjoh/serializer

Installation

 composer require dropelikeit/laravel-responsefactory

Support note

Laravel PHP Package Version Status
11 8.3 v1.x.x No longer supported
11 8.3 v1.x.x No longer supported
11 8.3 + 8.4 v1.x.x No longer supported
12 8.3 + 8.4 v2.x.x Support

How to use

Laravel uses Package Auto-Discovery, so you do not need to add the service provider manually.

For example, to use the ResponseFactory in a controller, simply insert the ResponseFactory in the constructor.

    <?php 
    namespace App\Http\Controller;

    use Dropelikeit\ResponseFactory\Http\Responses\ResponseFactory;
    use Symfony\Component\HttpFoundation\JsonResponse;

    final class ExampleController extends Controller 
    {
        public function __construct(private ResponseFactory $responseFactory) {}

        public function myAction(): JsonResponse
        {
            $myDataObjectWithSerializerAnnotations = new Object('some data');
            return $this->responseFactory->create($myDataObjectWithSerializerAnnotations);
        }
    }

Publish the ResponseFactory Config with the command

    php artisan vendor:publish

After that you will see a config file in your config folder named "responsefactory.php".

Upgrade

It is the first stable version, therefore it make no sense to read an upgrade guide.

Documentation


Collaborators

Contributors

Contribution


Help us to improve this project by reporting bugs, enhancement requests or other suggestions via the issue tracker.

After creating the issue tracker, it is also possible to create a PR with reference to the issue.

Thank you very much for your support!

Related Packages

tttptd/laravel-doctrine-responder

A Laravel package for APIs, wrapping the Fractal library behind an elegant Larav...

185 0
spatie/laravel-responsecache

Speed up a Laravel application by caching the entire response

9,823,775 2,814
nilportugues/laravel5-json-api-dingo

Laravel5 JSONAPI and Dingo together to build APIs fast

1,498 30