0.9.4 • Published 1 year ago

apollo-server4-sveltekit v0.9.4

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

apollo-server4-sveltekit

The best integration of Apollo Server 4 for SvelteKit is a solution that allows users to utilize the advantages of Apollo Server to enhance the experience of their SvelteKit-based applications. Apollo Server is an open-source GraphQL server framework that makes it easy to define and expose GraphQL APIs, while SvelteKit is a toolkit for developing modern and dynamic web applications. By combining these two solutions, users can create web applications efficiently and smoothly.

Documentation available in:

  • English
  • Spanish

Installation

To install this module, run the following command in your terminal:

npm install @apollo/server apollo-server4-sveltekit

o

yarn add @apollo/server apollo-server4-sveltekit

Preparation

Before anything, you must create a file +server.ts in the src/routes/api/ folder of your SvelteKit project.

Usage

  • To use this function, first import it in your code:

    // src/routes/api/+server.ts
    import { ApolloServer } from '@apollo/server'
    import { createHandler } from 'apollo-server4-sveltekit'
  • then you can use the createHandler function to create an Apollo Server handler:

    const typeDefs = `
      type Query {
        ping: String
      }
    `
    
    const resolvers = {
      Query: {
        ping: () => 'pong',
      },
    }
    
    const server = new ApolloServer({
      typeDefs,
      resolvers,
    })
    
    const handler = createHandler(server, {
      context: async (context) => ({ context }),
    })
    
    export const GET = handler
    export const POST = handler
    export const PUT = handler
    export const PATCH = handler
    export const DELETE = handler

    The createHandler function takes as an argument an Apollo server and an optional options object with a context function. The context function will be executed for each request and should return an object with any necessary context information to process the request.


Information

If you want to make more advanced configurations or see the difference of apollo server 4 with older versions, you can see the official Apollo Server documentation here.

License

  • MIT

Created by jjjjose - 2022