elysiajs / elysia-apollo

Plugin for Elysia for using GraphQL Apollo

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

@elysiajs/apollo

Plugin for elysia for using GraphQL Apollo.

Installation

bun add @elysiajs/apollo @apollo/server graphql

Example

import { Elysia } from 'elysia'
import { apollo, gql } from '@elysiajs/apollo'

const app = new Elysia()
    .use(
        apollo({
            typeDefs: gql`
                type Book {
                    title: String
                    author: String
                }

                type Query {
                    books: [Book]
                }
            `,
            resolvers: {
                Query: {
                    books: () => {
                        return [
                            {
                                title: 'Elysia',
                                author: 'saltyAom'
                            }
                        ]
                    }
                }
            }
        })
    )
    .listen(8080)

Config

This plugin extends Apollo's ServerRegistration (which is ApolloServer's' constructor parameter).

Below are the extended parameters for configuring Apollo Server with Elysia.

path

@default "/graphql"

Path to expose Apollo Server

enablePlayground

@default "process.env.ENV !== 'production'

Determine whether should Apollo should provide Apollo Playground

About

Plugin for Elysia for using GraphQL Apollo

License:MIT License


Languages

Language:TypeScript 86.6%Language:JavaScript 11.9%Language:Shell 1.5%