finds.dev← search

// the find

apollographql/apollo-server

★ 13,951 · TypeScript · MIT · updated Oct 2026

🌍  Spec-compliant and production ready JavaScript GraphQL server that lets you develop in a schema-first way. Built for Express, Connect, Hapi, Koa, and more.

The core package of Apollo Server 4, `@apollo/server`, which implements the GraphQL spec and runs either standalone or mounted in an existing Node framework through integration packages. It suits Node teams who want a schema-first server and can accept Apollo's plugin model and its optional managed-service hooks.

- The core doesn't own the HTTP layer. `ApolloServer` is a request pipeline, and `startStandaloneServer` or a framework integration sits on top of it, so the same instance can move between Express, a serverless handler, and the standalone server without a rewrite.

- Features are opt-in subpath packages (`plugin/cacheControl`, `plugin/drainHttpServer`, `plugin/disableSuggestions`, `plugin/subscriptionCallback`), so you only import what you use.

- `RecursiveSelectionsLimit.ts` is a standalone validation rule with its own test file, which makes it easy to see exactly what gets rejected before a resolver runs.

- Test coverage targets the hard parts: graceful HTTP drain on shutdown (`stoppable.test.ts`), usage-reporting histograms and stats snapshots, and dynamic cache-control hints each have dedicated test files.

- Express is no longer in the core package. The README's Express example installs `@as-integrations/express5`, and the README says integrations are community-maintained, so Express compatibility depends on a package outside Apollo's release train. Check that package's activity before building on it.

- The usage and schema reporting plugins only do useful work if you run a GraphOS graph. The README doesn't say which features need an Apollo account, so you find out by reading the plugin code.

- The README banner still promotes GraphQL Summit 2025 (Oct 6-8, 2025), a year behind today. It's cosmetic, but it's the first thing a new visitor reads and makes the project look less maintained than its commit history suggests.

- The README covers two starter servers and sends everything else to apollographql.com, so anything beyond those examples, such as CORS, caching, or error masking, means leaving the repo for the docs site.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →