graphql-subscriptions
fastify-websocket
Our great sponsors
graphql-subscriptions | fastify-websocket | |
---|---|---|
7 | 1 | |
1,575 | 368 | |
-0.1% | 2.2% | |
4.6 | 7.0 | |
2 months ago | 9 days ago | |
TypeScript | JavaScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
graphql-subscriptions
-
three ways to deploy a serverless graphQL API
graphql-yoga is built on other packages that provide functionality required for building a GraphQL server such as web server frameworks like express and apollo-server, GraphQL subscriptions with graphql-subscriptions and subscriptions-transport-ws, GraphQL engine & schema helpers including graphql.js and graphql-tools, and an interactive GraphQL IDE with graphql-playground.
-
Subscriptions and Live Queries - Real Time with GraphQL
The most common used (but not best maintained) library for such a PubSub engine in the GraphQL context is graphql-subscriptions. There are also adapters available for more distributed systems (where all GraphQL API replicas must be notified about the event) e.g. over Redis.
-
GraphQL over WebSockets
During that work, we created and merged the reference implementation into graphql-js and created two supporting libraries: graphql-subscriptions and subscriptions-transport-ws. Here is a talk with deep dive into all the details.
-
Using useSWR as an alternative to Subscriptions?
The Prisma / GraphQL-Yoga comes with Subscriptions, and this was the first thing I came across when my client asked for realtime updates. The implementation was quite difficult - took me a long time. Eventually, it was working locally, and in staging. However, when it came to the production environment, for some reason it just didn't work! This unfortunately ended up with a user losing an auction, which ultimately went to court etc.
-
GraphQL subscriptions not working consistently
There are also other solutions available: https://github.com/apollographql/graphql-subscriptions#pubsub-implementations
-
Build a chat app with GraphQL Subscriptions & TypeScript: Part 2
First, let's try to understand what PubSub is exactly. Apollo Server uses a publish-subscribe (pub/sub) model to track events that update subscriptions. The graphql-subscriptions library included in all apollo-server packages (including middleware integrations) provides a PubSub class as a basic in-memory event bus.
-
GraphQL the Simple Way, or: Don't Use Apollo
To add this, I can just expand the basic setup above. To do so, I do actually use a couple of small Apollo modules! Most can be picked and configured independently. For this case, graphql-subscriptions provides a little bit of pubsub logic that works within resolvers, and subscriptions-transport-ws integrates that into Express to handle the websockets themselves. Super helpful
fastify-websocket
-
GraphQL over WebSockets
With fastify-websocket
What are some alternatives?
uWebSockets.js - μWebSockets for Node.js back-ends :metal:
ws - Simple to use, blazing fast and thoroughly tested WebSocket client and server for Node.js
amplify-flutter - A declarative library with an easy-to-use interface for building Flutter applications on AWS.
graphql-redis-subscriptions - A graphql subscriptions implementation using redis and apollo's graphql-subscriptions
graphql-ws - Coherent, zero-dependency, lazy, simple, GraphQL over WebSocket Protocol compliant server and client.
subscriptions-transport-ws - :arrows_clockwise: A WebSocket client + server for GraphQL subscriptions
graphql-js - A reference implementation of GraphQL for JavaScript
graphql-yoga - 🧘 Rewrite of a fully-featured GraphQL Server with focus on easy setup, performance & great developer experience. The core of Yoga implements WHATWG Fetch API and can run/deploy on any JS environment.
express-graphql - Create a GraphQL HTTP server with Express.