rsocket / rsocket-js

JavaScript implementation of RSocket
https://github.com/rsocket/rsocket-js
Apache License 2.0
600 stars 97 forks source link

feat: apollo graphql link and server #225

Closed viglucci closed 1 year ago

viglucci commented 2 years ago

Adds experimental ApolloLink and ApolloServer implementations to support GraphQL over RSocket with Apollo GraphQL.

Motivation:

Spring recently added support for GraphQL over RSocket, and we were interested to see if we could provide similar support via rsocket-js. This addition will provide a mechanism for consuming RSocket transport using GraphQL servers via JS clients (browser etc.).

Additionally, these additions provide an interesting alternative to existing Apollo GraphQL subscription links, such as graphql-ws. Existing GraphQL subscription users could now benefit from a potentially increased number of available transport protocol options. I believe it would be beneficial for these advancements to be more broadly broadcasted and advocated for in the GraphQL community.

Modifications:

Result:

See above.

Related:

Open questions/items:

viglucci commented 2 years ago

Moving this PR out of draft is pending investigating Apollo's executeOperation, as suggested here.

viglucci commented 2 years ago

I will fix DCO on merge.

viglucci commented 1 year ago

Rebased to fix resolve DCO check issue.