The goal of this library is to provide a runtime agnostic implementation for GraphQL-over-Websockets.
The library only supports subscriptions for now but will eventually support queries and mutations.
It supports the websocket libraries async-tungstenite, tokio-tungstenite and ws-stream-wasm, and
As the tungstenite library is pre-1.0 graphql-ws-client provides support for
a range of versions. You can select which version of tungestenite you want
using the tungstenite-0-xx feature flags. Note that only one of these can be
active at any time, or graphql-ws-client won't compile. Because of these
limitations only one tungstenite version will be tested on the
grapqhl-ws-client CI, as a result the other versions may not compile or
work corectly.
The library offers integrations with some popular GraphQL clients with feature flags:
- graphql-client:
features = ["client-graphql-client"] - cynic:
features = ["client-cynic"]
The documentation is quite limited at the moment, here are some sources:
By default, the library will log some messages at the trace level to help you debug.
It is possible to turn off the logging entirely by using the no-logging feature.