Skip to content
Branch: master
Find file History
abernix Propagate new `ValueOrPromise`/`WithRequired` types from `apollo-serv…
…er-env`. (#2417)

* Propagate new `ValueOrPromise`/`WithRequired` types from `apollo-server-env`.

Now that the `ValueOrPromise` and `WithRequired` types are more ubiquitously
available after @martijnwalraven's #2415 which brought them to
`apollo-server-env`, we can change the existing cases where we've used these
patterns or depended on them from less-than-ideal modules (like

* fixup! Propagate new `ValueOrPromise`/`WithRequired` types from `apollo-server-env`.
Latest commit ceee5db Mar 8, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
jest.config.js Replace `{}` with `Object.create(null)` in `jest.config.js` Oct 12, 2018
tsconfig.json Remove test dependencies from non-test `tsconfig.json` files Oct 11, 2018

title description
Setting up Apollo Server with Koa

npm version Build Status Join the community on Spectrum

This is the Koa integration of GraphQL Server. Apollo Server is a community-maintained open-source GraphQL server that works with many Node.js HTTP server frameworks. Read the docs. Read the CHANGELOG.

npm install apollo-server-koa graphql


const Koa = require('koa');
const { ApolloServer, gql } = require('apollo-server-koa');

// Construct a schema, using GraphQL schema language
const typeDefs = gql`
  type Query {
    hello: String

// Provide resolver functions for your schema fields
const resolvers = {
  Query: {
    hello: () => 'Hello world!',

const server = new ApolloServer({ typeDefs, resolvers });

const app = new Koa();
server.applyMiddleware({ app });

app.listen({ port: 4000 }, () =>
  console.log(`🚀 Server ready at http://localhost:4000${server.graphqlPath}`),


GraphQL Server is built with the following principles in mind:

  • By the community, for the community: GraphQL Server's development is driven by the needs of developers
  • Simplicity: by keeping things simple, GraphQL Server is easier to use, easier to contribute to, and more secure
  • Performance: GraphQL Server is well-tested and production-ready - no modifications needed

Anyone is welcome to contribute to GraphQL Server, just read, take a look at the roadmap and make your first PR!

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.