PHPackages                             joskfg/graphql-bulk-resolver - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. joskfg/graphql-bulk-resolver

ActiveLibrary[API Development](/categories/api)

joskfg/graphql-bulk-resolver
============================

GraphQL Bulk Resolver

0.4(7y ago)41.3k1MITPHPPHP &gt;=7.0

Since Apr 8Pushed 7y ago1 watchersCompare

[ Source](https://github.com/joskfg/graphql-bulk-resolver)[ Packagist](https://packagist.org/packages/joskfg/graphql-bulk-resolver)[ Docs](https://github.com/joskfg/graphql-bulk-resolver)[ RSS](/packages/joskfg-graphql-bulk-resolver/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (6)Versions (6)Used By (0)

GraphQL Bulk Resolver
=====================

[](#graphql-bulk-resolver)

[![Latest Version](https://camo.githubusercontent.com/a70bbfee9ecb88eacf97eda6c409ba5dd07ec533021e70859eea2095f4e2710b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f6a6f736b66672f6772617068716c2d62756c6b2d7265736f6c7665722e7376673f7374796c653d666c61742d737175617265)](https://github.com/joskfg/graphql-bulk-resolver/releases)[![Software License](https://camo.githubusercontent.com/942e017bf0672002dd32a857c95d66f28c5900ab541838c6c664442516309c8a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)[![Build Status](https://camo.githubusercontent.com/9cc099721f5d1f064c5dbb844db1e5ee660c934ec5b1476e14b69212d80a0e62/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f6a6f736b66672f6772617068716c2d62756c6b2d7265736f6c7665722f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/joskfg/graphql-bulk-resolver)[![Coverage Status](https://camo.githubusercontent.com/f25690cd15c6c712466b1791b1878f499a40f463146dd6c8f19ce6c72abd44b5/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f636f7665726167652f672f6a6f736b66672f6772617068716c2d62756c6b2d7265736f6c7665722e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/joskfg/graphql-bulk-resolver/code-structure)[![Quality Score](https://camo.githubusercontent.com/2bd8999ae22788750a14adea589c015c433f38ef5475b2cb5207d54612297bb2/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f6a6f736b66672f6772617068716c2d62756c6b2d7265736f6c7665722e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/joskfg/graphql-bulk-resolver)[![Total Downloads](https://camo.githubusercontent.com/c66cf9590a0ed58862ec976400c6224a736e5fa6bb9467508680c648753c3a97/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6a6f736b66672f6772617068716c2d62756c6b2d7265736f6c7665722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/joskfg/graphql-bulk-resolver)

Trait to avoid [N+1 problem](http://webonyx.github.io/graphql-php/data-fetching/#solving-n1-problem) in GraphQL when using the [webonyx/graphql-php](https://github.com/webonyx/graphql-php) or any wrapper. It is based in the Deferred resolvers that provide the library and allow you to work with them in an easy way.

Documentation
-------------

[](#documentation)

The trait split the resolver in two parts, fetch and pluck.

### Fetch

[](#fetch)

This part receive all the root objects in one array, so you can process all of them in one shoot and return all the data in the best way to be processed in the pluck.

### Pluck

[](#pluck)

The method receives all the data processed and the root that is requesting the info, so it should search inside the data processed and return the specific data.

You must implement the resolver using the `DeferredResolverInterface` and use the trait in the resolver type like this:

```
'resolve' => $this->deferredResolve(new MyResolver());

```

You can see an article about the package at

Testing
-------

[](#testing)

`joskfg/graphql-bulk-resolver` has a [PHPUnit](https://phpunit.de) test suite and a coding style compliance test suite using [PHP CS Fixer](http://cs.sensiolabs.org/).

To run the tests, run the following command from the project folder.

```
$ docker-compose run test
```

To run interactively using [PsySH](http://psysh.org/):

```
$ docker-compose run psysh
```

License
-------

[](#license)

The MIT license. Please see [LICENSE](LICENSE.md) for more information.

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~56 days

Total

4

Last Release

2782d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/524887?v=4)[Joskfg](/maintainers/Joskfg)[@joskfg](https://github.com/joskfg)

---

Top Contributors

[![joskfg](https://avatars.githubusercontent.com/u/524887?v=4)](https://github.com/joskfg "joskfg (12 commits)")

---

Tags

graphqlresolverbulkjoskfgn plus 1

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/joskfg-graphql-bulk-resolver/health.svg)

```
[![Health](https://phpackages.com/badges/joskfg-graphql-bulk-resolver/health.svg)](https://phpackages.com/packages/joskfg-graphql-bulk-resolver)
```

###  Alternatives

[nuwave/lighthouse

A framework for serving GraphQL from Laravel

3.5k10.7M93](/packages/nuwave-lighthouse)[overblog/graphql-bundle

This bundle provides tools to build a GraphQL server in your Symfony App.

8027.9M28](/packages/overblog-graphql-bundle)[aimeos/ai-admin-graphql

Aimeos Admin GraphQL API extension

944100.0k4](/packages/aimeos-ai-admin-graphql)[mll-lab/graphql-php-scalars

A collection of custom scalar types for usage with https://github.com/webonyx/graphql-php

1394.2M28](/packages/mll-lab-graphql-php-scalars)[ivome/graphql-relay-php

A PHP port of GraphQL Relay reference implementation

271632.4k5](/packages/ivome-graphql-relay-php)[overblog/graphql-php-generator

GraphQL types generator

29518.9k](/packages/overblog-graphql-php-generator)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
