graphqlite

Use PHP Annotations to declare your GraphQL API

Github stars Tracking Chart


A library that allows you to write your GraphQL queries in simple-to-write controllers.

Features

  • Create a complete GraphQL API by simply annotating your PHP classes
  • Framework agnostic, but Symfony bundle available!
  • Comes with batteries included :battery:: queries, mutations, mapping of arrays / iterators, file uploads, extendable types and more!

Basic example

First, declare a query in your controller:

class ProductController
{
    /**
     * @Query()
     */
    public function product(string $id): Product
    {
        // Some code that looks for a product and returns it.
    }
}

Then, annotate the Product class to declare what fields are exposed to the GraphQL API:

/**
 * @Type()
 */
class Product
{
    /**
     * @Field()
     */
    public function getName(): string
    {
        return $this->name;
    }
    // ...
}

That's it, you're good to go :tada:! Query and enjoy!

{
  product(id: 42) {
    name
  }
}

Want to learn more? Head to the documentation!

Badges

Latest Stable Version
Total Downloads
Latest Unstable Version
License
Scrutinizer Code Quality
Build Status
Coverage Status

Main metrics

Overview
Name With Ownerthecodingmachine/graphqlite
Primary LanguageMDX
Program languagePHP (Language Count: 5)
Platform
License:MIT License
所有者活动
Created At2019-01-29 13:09:22
Pushed At2025-06-07 01:03:50
Last Commit At2025-06-06 17:43:09
Release Count29
Last Release Namev8.1.0 (Posted on 2025-06-06 21:02:50)
First Release Namev3.0.0 (Posted on )
用户参与
Stargazers Count561
Watchers Count18
Fork Count101
Commits Count1.2k
Has Issues Enabled
Issues Count257
Issue Open Count29
Pull Requests Count380
Pull Requests Open Count0
Pull Requests Close Count70
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private