Quick start
GraphQL Yoga is a batteries-included cross-platform GraphQL over HTTP spec-compliant GraphQL server powered by Envelop and GraphQL Tools that runs anywhere; focused on easy setup, performance and great developer experience.
Installation
yarn add graphql graphql-yoga
Schema
You will need to provide a schema to Yoga, there are many ways to assemble a GraphQL schema, here's just a few:
Use the createSchema
function included in Yoga. It actually reuses the makeExecutableSchema
from @graphql-tools/schema.
schema.js
import { createSchema } from 'graphql-yoga'
export const schema = createSchema({
typeDefs: /* GraphQL */ `
type Query {
hello: String
}
`,
resolvers: {
Query: {
hello: () => 'world'
}
}
})
Server
After you have created a GraphQL schema, simply pass it in to Yoga and liftoff! 🚀
import { createServer } from 'node:http'
import { createYoga } from 'graphql-yoga'
import { schema } from './schema'
// Create a Yoga instance with a GraphQL schema.
const yoga = createYoga({ schema })
// Pass it into a server to hook into request handlers.
const server = createServer(yoga)
// Start the server and you're done!
server.listen(4000, () => {
console.info('Server is running on http://localhost:4000/graphql')
})
Visit http://localhost:4000/graphql
to see Yoga in action.
Last updated on November 21, 2022