Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Graphql Bundle Laravel Package

overblog/graphql-bundle

View on GitHub
Deep Wiki
Context7

OverblogGraphQLBundle

This Symfony bundle provides integration of GraphQL using webonyx/graphql-php and GraphQL Relay. It also supports batching using libs like ReactRelayNetworkLayer or Apollo GraphQL.

Versions requirements

Version PHP Symfony Support
1.0 >= 8.0 >= 5.3.7 DEV
0.14 >= 7.4 >= 4.4.30 Active support
0.13 >= 7.2 >= 4.3 Active support
0.12 >= 7.1 >= 3.4, <4.4 Security
0.11 >= 5.6 >= 3.1, <=4.3 End of life
0.10 >= 5.5.9 >= 2.8, <= 3.1 End of life
0.9 >= 5.5.9 >= 2.8, <= 3.1 End of life
0.8 >= 5.4 >= 2.7, <= 3.1 End of life

After installation

Define your GraphQL schema.

Symfony Flex installation

Note: OverblogGraphQLBundle only supports Symfony Flex from version 0.9.0 onwards

a) Download the bundle

In the project directory:

composer require overblog/graphql-bundle

b) Accept the contrib recipes installation from Symfony Flex

-  WARNING  overblog/graphql-bundle (0.9): From github.com/symfony/recipes-contrib
    The recipe for this package comes from the "contrib" repository, which is open to community contributions.
    Do you want to execute this recipe?
    [y] Yes
    [n] No
    [a] Yes for all packages, only for the current installation session
    [p] Yes permanently, never ask again for this project
    (defaults to n): 

c) If you want to run GraphiQL interface we have a bundle:

composer require --dev overblog/graphiql-bundle

Manual installation

a) Download the bundle

In the project directory:

composer require overblog/graphql-bundle

b) Enable the bundle

// in app/AppKernel.php
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = [
            // ...
            new Overblog\GraphQLBundle\OverblogGraphQLBundle(),
        ];

        // ...
    }
}

c) Enable GraphQL endpoint

# in app/config/routing.yml
overblog_graphql_single_endpoint:
    resource: "[@OverblogGraphQLBundle](https://github.com/OverblogGraphQLBundle)/Resources/config/routing/single.yaml"
    prefix: /

To use multiple schemas:

# in app/config/routing.yml
overblog_graphql_multiple_endpoint:
    resource: "[@OverblogGraphQLBundle](https://github.com/OverblogGraphQLBundle)/Resources/config/routing/multiple.yaml"
    prefix: /graphql

Optional features dependencies

  • To use the Validator features, you must also install symfony/validator and doctrine/annotations
  • To use the annotations, you must also install doctrine/annotations
  • To use the annotations doctrine type guesser, you must also install doctrine/orm

Composer autoloader configuration (optional)

Use composer ClassLoader to load generated class (optional but recommended)

Using composer ClassLoader will help keeping hand on loader optimization in production environment...

First start by some configuration:

overblog_graphql:
    definitions:
        # disable listener the bundle out of box classLoader
        use_classloader_listener: false
        # change to "false" to disable auto compilation.
        # To generate types manually, see "graphql:compile" command.
        auto_compile: true
        # change classes cache dir (recommends using a directory that will be committed)
        cache_dir: "/my/path/to/my/generated/classes"
        # Can also change the namespace
        #class_namespace: "Overblog\\GraphQLBundle\\__DEFINITIONS__"

then enable composer autoloader in project composer.json:

{
    "autoload": {
        "psr-4": {
            "Overblog\\GraphQLBundle\\__DEFINITIONS__\\": "my/path/to/my/generated/classes/"
        }
    }
}

Finish by dumping the new autoloader.

composer dump-autoload
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
daikazu/eloquent-salesforce-objects
unseen-codes/chat
romalytar/yammi-jobs-monitoring-laravel
kisame76/filament-db-table-state
nqxcode/laravel-lucene-search
dpfx/laravel-livewire-wizards
workos/workos-php-laravel
sofa/laravel-global-scope
nawasara/auth-primitives
adhocrat-io/arkhe-main
make-dev/orca-harpoon
itsemon245/lamet
baks-dev/dashboard
amoifr/pickle-panther-bundle
make-dev/orca
dmstr/symfony-system-resources-bundle
dmstr/symfony-job-queue-bundle
dmstr/openapi-json-schema-bundle
dmstr/keycloak-security-bundle
dmstr/doctrine-audit-log-bundle