Overview
Apollo Server is a GraphQL server for Node.js that builds APIs from a schema and resolver functions. It can run as a standalone server, integrate with web frameworks, or participate in Apollo Federation as a subgraph or gateway.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Start a standalone GraphQL server from schema and resolvers
Define typeDefs and resolver functions, then use startStandaloneServer to expose a GraphQL endpoint with minimal HTTP setup.
Expand into web-framework and Federation deployments
Framework integrations provide more HTTP control, while Federation support covers subgraph and gateway roles.
For schema-first GraphQL APIs on Node.js
It fits APIs that want to combine multiple data sources behind a GraphQL schema and expose them through typed client operations.
Sources: [2]
Do not mix pre-v4 package names with the v5 runtime requirements
Current applications use @apollo/server and need Node.js 20+. Older apollo-server-express examples should not be applied directly to current integrations.
Official sources
- [1]apollographql/apollo-server repository(2026-09-21)
- [2]Apollo Server README(2026-09-21)
- [3]Apollo Server documentation(2026-09-21)
- [4]@apollo/server package(2026-09-21)
- [5]Apollo Server MIT license(2026-09-21)
Supplemental curator note
Apollo Server 4+ moved from the old `apollo-server*` package family to `@apollo/server`. The current `@apollo/server` package is 5.5.1, requires Node.js 20+, and peers on `graphql` ^16.11.0. The standalone server is convenient for getting started, while framework integrations are more appropriate when HTTP behavior needs finer control.
Try it in 3 steps
- 1
Install Apollo Server and GraphQL
Install the packages used by the current standalone-server README path.
npm install @apollo/server graphql - 2
Define the schema and resolvers in server.mjs
Follow the README hello-query example and start a standalone GraphQL server.
Create ApolloServer({ typeDefs, resolvers }) and startStandaloneServer(server) - 3
Start the server and run a query
Open the printed URL in Apollo Sandbox and verify that the hello query returns world.
node server.mjs → query { hello }
Growth
Growth trends · Last 30 days
13,954 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 3
- Open PRs
- 29
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- graphql
- graphql-server
- express-graphql
- express
- koa
- hapi
- node
- restify
- apollographql
- graphql-schema
- resolvers
- Stars
- 13,954
- Forks
- 2,005
- Watchers
- 195
- Open issues
- 59
- Contributors
- 417
- Primary language
- TypeScript
- License
- MIT
- Repository last updated
- Sep 20, 2026
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- Hoppscotch80,429 Stars
2 shared tag(s) · 1 shared category(s) · Same language
An API development ecosystem spanning REST, GraphQL, WebSocket, MQTT, Web/Desktop/CLI clients, and self-hosting.
TypeScript - Auth.js28,369 Stars
2 shared tag(s) · 1 shared category(s) · Same language
Web authentication packages supporting OAuth, OIDC, passwordless sign-in, Passkeys, and multiple session models.
TypeScript - GraphQL Code Generator11,260 Stars
2 shared tag(s) · 1 shared category(s) · Same language
A plugin-based generator that turns GraphQL schemas and query/mutation/subscription documents into TypeScript types, client code, resolver types, and other outputs.
TypeScript - AWS Amplify JavaScript9,561 Stars
2 shared tag(s) · 1 shared category(s) · Same language
AWS Amplify's JavaScript library for using authentication, APIs, storage, and other cloud capabilities from web and React Native applications. The current `aws-amplify` package is 6.21.0.
TypeScript - urql8,977 Stars
2 shared tag(s) · 1 shared category(s) · Same language
A GraphQL client for React, Vue, Solid, Svelte, and other frameworks that starts with document caching and grows through customizable exchanges.
TypeScript
Report incorrect information
Tell us if any listing information is incorrect or outdated.