Skip to content
SPECIFICTION
Get listed

GraphQL Kotlin vs Mercurius

GraphQL Kotlin

opensource.expediagroup.com

Mercurius

mercurius.dev

Side by side

FigureGraphQL KotlinMercurius
Price fromFree—
Free planYes—
Free trial——
Open source——
APIYesYes
Self-hostedYesYes
Plans published10
Spec score · GraphQL Tools8.0 (#8)6.5 (#24)
IntegrationsReference client implementations use Ktor HTTP Client and Spring WebClient, and custom implementations can use other engines.The integrations documentation lists Nexus, TypeGraphQL, GQLoom, Prisma, mercurius-integration-testing, OpenTelemetry, and NestJS.
LicenseThe library is licensed under Apache License 2.0.The repository lists the project under the MIT license.
SecurityThe repository README directs users to SECURITY.md for security issue contact information and supported versions receiving security updates.Mercurius includes CSRF prevention, which the documentation says is disabled by default and must be enabled in configuration.
What it doesGraphQL Kotlin is a collection of libraries built on graphql-java for running GraphQL clients and servers in Kotlin.Mercurius is a GraphQL adapter for Fastify.

Plans

GraphQL Kotlin

  • Open sourceFree

GraphQL Kotlin pricing →

Mercurius

No plans published.

Mercurius pricing →

In their own words

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.

Visit opensource.expediagroup.com

Mercurius

Mercurius has no write-up on Specifiction yet; its figures are above.

Visit mercurius.dev