GraphQL.js vs GraphQL Kotlin
GraphQL.js
graphql-js.orgGraphQL Kotlin
opensource.expediagroup.comSide by side
| Figure | GraphQL.js | GraphQL Kotlin |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | — |
| API | Yes | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · GraphQL Tools | 7.7 (#12) | 8.0 (#8) |
| License | GraphQL.js is MIT-licensed. | The library is licensed under Apache License 2.0. |
| Purpose | GraphQL.js is the official JavaScript implementation of the GraphQL specification, with a parser, validator, executor, type system, and utilities. | GraphQL Kotlin is a collection of libraries built on graphql-java to run GraphQL clients and servers in Kotlin. |
Plans
In their own words
GraphQL.js
GraphQL.js is the official JavaScript implementation of the GraphQL specification. It provides a parser, validator, executor, type system and related utilities for building GraphQL servers, clients, tools and schema workflows in JavaScript or TypeScript. Developers define a type schema and serve queries against it; the graphql function checks syntax and semantics before execution and reports invalid queries. Documentation identifies v17 as the current stable release, with v16 available for projects requiring older Node.js versions. Getting-started instructions require Node.js 22 or newer and provide installation commands for npm, pnpm, yarn and bun. The library runs in Node servers and browsers, distributes CommonJS and ESModule files, and the project says webpack and rollup builds should work. It is MIT-licensed, free, distributed through npm and intended for self-hosted deployment. Latest and previous major versions receive stated support, but no Long-Term Support version is offered.
GraphQL Kotlin
GraphQL Kotlin is a free Apache License 2.0 collection of libraries, built on graphql-java, for running GraphQL clients and servers in Kotlin. Its schema generator creates schemas from Kotlin code, and a federation module can produce Apollo Federation-compliant schemas. Gradle and Maven plugins generate type-safe Kotlin clients from existing schemas. Generated clients support queries, mutations, batching, coroutines, custom scalars, configurable enum defaults, and Jackson or kotlinx.serialization models. Reference HTTP integrations use Ktor HTTP Client and Spring WebClient, while custom engines are possible. Server implementations target Spring Boot and Ktor; the Spring server uses Spring WebFlux. Ktor supports Kotlin Flow subscriptions over WebSockets with the graphql-transport-ws subprotocol. Its plugin leaves route configuration to the application, allowing selective routes and added authentication logic. The schema generator supports Kotlin Lists, but Sets, arbitrary Maps, and arrays are not supported out of the box. The project is self-hosted, with security guidance in its repository and community support through GitHub Discussions and Kotlin Slack.