infinityloop-dev/graphpinator 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

infinityloop-dev/graphpinator

最新稳定版本:v2.0-rc5

Composer 安装命令:

composer require infinityloop-dev/graphpinator

包简介

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

README 文档

README

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

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 arrays, 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:
Name Version Description
Printer GitHub release Schema printing for GraPHPinator typesystem.
Extra types GitHub release Some useful directives and commonly used types, both scalar or composite.
Constraint directives GitHub release Typesystem directives to declare additional validation on top of GraphQL typesystem.
Where directives GitHub release Executable directives to filter values in lists.
Upload GitHub release Module to handle multipart-formdata requests.
Query cost GitHub release Modules to limit query cost by restricting maximum depth or number of nodes.
Persisted queries GitHub release Module to persist validated query in cache and improve performace of repeating queries.
  • Includes adapters for easy integration into other PHP frameworks:
Name Version Description
PSR Bundled
Symfony GitHub release Adapters for Symfony framework.
Nette GitHub release Adapters for Nette framework.
  • Project is composed of multiple smaller packages, which may be used standalone:
Name Version Description
Source GitHub release Wrapper around source document.
Tokenizer GitHub release Lexical analyzer of GraphQL document.
Parser GitHub release Syntactic analyzer of GraphQL document.

Supporters

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

Webthinx

Installation

Install package using composer

composer require infinityloop-dev/graphpinator

How to use

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
  • psr/log

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

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.

统计信息

  • 总下载量: 24.12k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 45
  • 点击次数: 1
  • 依赖项目数: 10
  • 推荐数: 0

GitHub 信息

  • Stars: 45
  • Watchers: 1
  • Forks: 8
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2020-03-28