PHPackages                             infinityloop-dev/graphpinator - 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. infinityloop-dev/graphpinator

ActiveLibrary[API Development](/categories/api)

infinityloop-dev/graphpinator
=============================

Easy-to-use &amp; Fast GraphQL server implementation for PHP.

v2.1(5mo ago)4528.4k↓33.3%8[10 issues](https://github.com/graphpql/graphpinator/issues)10MITPHPPHP &gt;=8.2CI passing

Since Apr 10Pushed 5mo ago1 watchersCompare

[ Source](https://github.com/graphpql/graphpinator)[ Packagist](https://packagist.org/packages/infinityloop-dev/graphpinator)[ Docs](https://github.com/graphpql/)[ RSS](/packages/infinityloop-dev-graphpinator/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (10)Dependencies (17)Versions (140)Used By (10)

GraPHPinator [![PHP](https://github.com/graphpql/graphpinator/actions/workflows/php.yml/badge.svg)](https://github.com/graphpql/graphpinator/actions/workflows/php.yml) [![codecov](https://camo.githubusercontent.com/cd4b0e06b0ba02f7a64e79bd3440d326c5795d4528f242aa76b55b08606a9a55/68747470733a2f2f636f6465636f762e696f2f67682f696e66696e6974796c6f6f702d6465762f677261706870696e61746f722f6272616e63682f6d61737465722f67726170682f62616467652e737667)](https://codecov.io/gh/infinityloop-dev/graphpinator)
=================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================

[](#graphpinator--)

⚡🌐⚡ Easy-to-use &amp; Fast GraphQL server implementation for PHP.

Introduction
------------

[](#introduction)

Feature complete PHP implementation of GraphQL server. Its job is transformation of query string into resolved Json result for a given Schema.

- Aims to be compliant with the **latest draft of GraphQL specification** and its RFCs.
- Fully typesafe, and therefore **minimum required PHP version is 8.2**. Sacrifices a tiny bit of convenience for huge amount of clarity and safety - no random configuration `array`s, no mixed types, no variable function arguments - this library doesnt try to save you from verbosity, but makes sure you always know what you've got.
- **Code first**.
- Flexible. Easy to extend with extra functionality using **Modules** or **middleware Directives**.
- Includes some **opt-in extensions** which are out of scope of official specs:

NameVersionDescription[Printer](https://github.com/graphpql/graphpinator-printer)[![GitHub release](https://camo.githubusercontent.com/cacbb707cdd791466b699b8ed75d5271f4226b637d49aef7ecd38bb73d073551/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d7072696e7465723f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/cacbb707cdd791466b699b8ed75d5271f4226b637d49aef7ecd38bb73d073551/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d7072696e7465723f6c6162656c3d76657273696f6e)Schema printing for GraPHPinator typesystem.[Extra types](https://github.com/graphpql/graphpinator-extra-types)[![GitHub release](https://camo.githubusercontent.com/7a3f5e8973f820e040345ec7d69b47f4252d4ba6c5a7333633c9f23227c98b70/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d65787472612d74797065733f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/7a3f5e8973f820e040345ec7d69b47f4252d4ba6c5a7333633c9f23227c98b70/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d65787472612d74797065733f6c6162656c3d76657273696f6e)Some useful directives and commonly used types, both scalar or composite.[Constraint directives](https://github.com/graphpql/graphpinator-constraint-directives)[![GitHub release](https://camo.githubusercontent.com/a72e3bb2ad8c2682fe29e1de7baa12a4fd18f942cef01ec4e38e8f7b8bc96da1/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d636f6e73747261696e742d646972656374697665733f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/a72e3bb2ad8c2682fe29e1de7baa12a4fd18f942cef01ec4e38e8f7b8bc96da1/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d636f6e73747261696e742d646972656374697665733f6c6162656c3d76657273696f6e)Typesystem directives to declare additional validation on top of GraphQL typesystem.[Where directives](https://github.com/graphpql/graphpinator-where-directives)[![GitHub release](https://camo.githubusercontent.com/98ea598b2e41c08ea5d5813e6fabd627747f6c92d4393e73da18d29098eb1ac3/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d77686572652d646972656374697665733f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/98ea598b2e41c08ea5d5813e6fabd627747f6c92d4393e73da18d29098eb1ac3/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d77686572652d646972656374697665733f6c6162656c3d76657273696f6e)Executable directives to filter values in lists.[Upload](https://github.com/graphpql/graphpinator-upload)[![GitHub release](https://camo.githubusercontent.com/07d667b3e4cb6e2ad85e194f3a48955788d894acce80f7a4a30864e0f7b8e65e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d75706c6f61643f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/07d667b3e4cb6e2ad85e194f3a48955788d894acce80f7a4a30864e0f7b8e65e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d75706c6f61643f6c6162656c3d76657273696f6e)Module to handle [multipart-formdata](https://github.com/jaydenseric/graphql-multipart-request-spec) requests.[Query cost](https://github.com/graphpql/graphpinator-query-cost)[![GitHub release](https://camo.githubusercontent.com/6a3afdce8b763a100ad35bb3dab825f120990672be05c635845fed8bef2223e3/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d71756572792d636f73743f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/6a3afdce8b763a100ad35bb3dab825f120990672be05c635845fed8bef2223e3/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d71756572792d636f73743f6c6162656c3d76657273696f6e)Modules to limit query cost by restricting maximum depth or number of nodes.[Persisted queries](https://github.com/graphpql/graphpinator-persisted-queries)[![GitHub release](https://camo.githubusercontent.com/bce958bc2fc68a48945c857960132b8e12e4270a5cf791c42ce91c4c4cbe17aa/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d7065727369737465642d717565726965733f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/bce958bc2fc68a48945c857960132b8e12e4270a5cf791c42ce91c4c4cbe17aa/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d7065727369737465642d717565726965733f6c6162656c3d76657273696f6e)Module to persist validated query in cache and improve performace of repeating queries.- Includes adapters for easy integration into other PHP frameworks:

NameVersionDescriptionPSRBundled[Symfony](https://github.com/graphpql/graphpinator-symfony)[![GitHub release](https://camo.githubusercontent.com/0fbaecc9892c55550fed5cf4ad2506c581778b482be96105a40d84bb93f725b4/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d73796d666f6e793f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/0fbaecc9892c55550fed5cf4ad2506c581778b482be96105a40d84bb93f725b4/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d73796d666f6e793f6c6162656c3d76657273696f6e)Adapters for [Symfony framework](https://symfony.com/).[Nette](https://github.com/graphpql/graphpinator-nette)[![GitHub release](https://camo.githubusercontent.com/346e19f022cab7e8bd9bef79d73740b82bad465066a4dd3464235dbda7cd90de/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d6e657474653f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/346e19f022cab7e8bd9bef79d73740b82bad465066a4dd3464235dbda7cd90de/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d6e657474653f6c6162656c3d76657273696f6e)Adapters for [Nette framework](https://nette.org/).- Project is composed of multiple smaller packages, which may be used standalone:

NameVersionDescription[Source](https://github.com/graphpql/graphpinator-source)[![GitHub release](https://camo.githubusercontent.com/8c99a87cf9c2b3a79b91704f635c9a4ca05255f8fc8827881ce1099cf6240a72/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d736f757263653f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/8c99a87cf9c2b3a79b91704f635c9a4ca05255f8fc8827881ce1099cf6240a72/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d736f757263653f6c6162656c3d76657273696f6e)Wrapper around source document.[Tokenizer](https://github.com/graphpql/graphpinator-tokenizer)[![GitHub release](https://camo.githubusercontent.com/8638b0e66ced39ebe3c308b442b9786355cdf4fed655814aac626c5e734db053/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d746f6b656e697a65723f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/8638b0e66ced39ebe3c308b442b9786355cdf4fed655814aac626c5e734db053/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d746f6b656e697a65723f6c6162656c3d76657273696f6e)Lexical analyzer of GraphQL document.[Parser](https://github.com/graphpql/graphpinator-parser)[![GitHub release](https://camo.githubusercontent.com/e69fd57c53000785eb80f6baff8623676202aed119e8edf670ef06531aea67f6/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d7061727365723f6c6162656c3d76657273696f6e)](https://camo.githubusercontent.com/e69fd57c53000785eb80f6baff8623676202aed119e8edf670ef06531aea67f6/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f677261706870716c2f677261706870696e61746f722d7061727365723f6c6162656c3d76657273696f6e)Syntactic analyzer of GraphQL document.Supporters
----------

[](#supporters)

This project is being made with help by following companies and individuals. Thank you!

[![Webthinx](docs/supporters/webthinx.png "Webthinx")](https://www.webthinx.com/)

Installation
------------

[](#installation)

Install package using composer

`composer require infinityloop-dev/graphpinator`

How to use
----------

[](#how-to-use)

- Visit our simple [Hello world example](/docs/examples/HelloWorld.md).
- Or visit [the complete Docs](/docs/README.md).

Dependencies
------------

[](#dependencies)

- PHP 8.2+
    - Latest PHP 8.1+ version is 1.x.x
    - Latest PHP 8.0+ version is 1.3.x
    - Latest PHP 7.4+ version is 0.25.x
- [psr/http-message](https://github.com/php-fig/http-message)
- [psr/log](https://github.com/php-fig/log)

This list excludes graphpinator sub-packages such as graphpinator-common, graphpinator-tokenizer and others.

Contributing
------------

[](#contributing)

This package is relatively new, so some features might be missing. If you stumble upon something that is not included or is not compliant with the specs, please inform us by creating an issue or discussion. This is not yet another package, where issues and pull-requests lie around for months, so dont hesitate and help us improve the library.

###  Health Score

58

—

FairBetter than 98% of packages

Maintenance65

Regular maintenance activity

Popularity40

Moderate usage in the ecosystem

Community24

Small or concentrated contributor base

Maturity87

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 79.9% 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 ~15 days

Recently: every ~5 days

Total

138

Last Release

175d ago

Major Versions

v0.25.10 → v1.0-rc12021-01-14

v1.7.7 → v2.0-rc12025-12-17

PHP version history (4 changes)v0.1PHP &gt;=7.4

v1.0-rc1PHP &gt;=8.0.1

v1.4PHP &gt;=8.1

v2.0-rc1PHP &gt;=8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/00654c913028f8d25a226eb2ddf368e1b999bf72fa4f77dbd1449c1df218756c?d=identicon)[peldax](/maintainers/peldax)

---

Top Contributors

[![peldax](https://avatars.githubusercontent.com/u/10790033?v=4)](https://github.com/peldax "peldax (1255 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (223 commits)")[![vossik](https://avatars.githubusercontent.com/u/22434658?v=4)](https://github.com/vossik "vossik (72 commits)")[![HonzaBejvl](https://avatars.githubusercontent.com/u/23004049?v=4)](https://github.com/HonzaBejvl "HonzaBejvl (15 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (6 commits)")

---

Tags

apiapi-servergraphqlgraphql-phpgraphql-serverphp

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/infinityloop-dev-graphpinator/health.svg)

```
[![Health](https://phpackages.com/badges/infinityloop-dev-graphpinator/health.svg)](https://phpackages.com/packages/infinityloop-dev-graphpinator)
```

###  Alternatives

[symfony/symfony

The Symfony PHP framework

31.4k87.2M2.2k](/packages/symfony-symfony)[algolia/algoliasearch-client-php

API powering the features of Algolia.

69735.1M159](/packages/algolia-algoliasearch-client-php)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.5k5.9M737](/packages/sylius-sylius)[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)[flow-php/flow

PHP ETL - Extract Transform Load - Data processing framework

85036.3k](/packages/flow-php-flow)[telnyx/telnyx-php

Official Telnyx PHP SDK — APIs for Voice, SMS, MMS, WhatsApp, Fax, SIP Trunking, Wireless IoT, Call Control, and more. Build global communications on Telnyx's private carrier-grade network.

35789.4k2](/packages/telnyx-telnyx-php)

PHPackages © 2026

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