UNPKG

chimp

Version:

Your development companion for doing quality, faster.

40 lines (34 loc) 1.01 kB
import { ApolloServer } from "@apollo/server"; import { expressMiddleware } from "@apollo/server/express4"; import { json } from "body-parser"; import cors from "cors"; import cookieParser from "cookie-parser"; import express from "express"; import http from "http"; import { schema } from "~generated/graphql/schema"; import { GqlContext, appContext } from "~app/context"; import { root } from "./root"; const apollo = new ApolloServer<GqlContext>({ schema, }); apollo.start().then(async () => { const app = express(); app.use([cookieParser()]); const httpServer = http.createServer(app); const corsOptions = { origin: "http://localhost:3000", credentials: true, }; app.use( "/graphql", cors<cors.CorsRequest>(corsOptions), json(), expressMiddleware(apollo, { context: appContext(root), }), ); const port = process.env.PORT || 4000; httpServer.listen({ port }, () => { console.log(`🚀 Server ready at http://localhost:${port}/graphql`); }); });