go-graphql-subscription-example - ☝️ go-graphql subscription over Kafka/Redis/NSQ example

  •        76

Project that demonstrates graphQL subscriptions (over Websocket) to consume pre-configured topics from different kinds of stream sources like Apache Kafka, redis, NSQ... This repository implements a simple service allowing clients to consume messages from a topics/channels through a graphQL subscription endpoint.

https://github.com/ccamel/go-graphql-subscription-example

Tags
Implementation
License
Platform

   




Related Projects

graphql-redis-subscriptions - A graphql subscriptions implementation using redis and apollo's graphql-subscriptions

  •    TypeScript

This package implements the PubSubEngine Interface from the graphql-subscriptions package and also the new AsyncIterator interface. It allows you to connect your subscriptions manger to a redis Pub Sub mechanism to support multiple subscription manager instances. Subscriptions resolvers are not a function, but an object with subscribe method, that returns AsyncIterable.

graphql-subscriptions - :newspaper: A small module that implements GraphQL subscriptions for Node.js

  •    TypeScript

GraphQL subscriptions is a simple npm package that lets you wire up GraphQL with a pubsub system (like Redis) to implement subscriptions in GraphQL.You can use it with any GraphQL client and server (not only Apollo).

subscriptions-transport-ws - :arrows_clockwise: A WebSocket client + server for GraphQL subscriptions

  •    TypeScript

A GraphQL WebSocket server and client to facilitate GraphQL queries, mutations and subscriptions over WebSocket.subscriptions-transport-ws is an extension for GraphQL, and you can use it with any GraphQL client and server (not only Apollo).

graphql - An implementation of GraphQL for Go / Golang

  •    Go

A work-in-progress implementation of GraphQL in Go. Its currently a port of graphql-js v0.6.0 which is based on the April 2016 GraphQL specification. Future efforts will be guided directly by the latest formal GraphQL specification (currently: October 2016).The following is a simple example which defines a schema with a single hello string-type field and a Resolve method which returns the string world. A GraphQL query is performed against this schema with the resulting output printed in JSON format.

graphql-yoga - 🧘 Fully-featured GraphQL Server with focus on easy setup, performance & great developer experience

  •    TypeScript

To get started with graphql-yoga, follow the instructions in the READMEs of the examples.(**) Notice that the req argument is an object of the shape { request, connection } which either carries a request: Request property (in case it's a Query/Mutation resolver) or a connection: SubscriptionOptions property (in case it's a Subscription resolver). Request is imported from Express.js. SubscriptionOptions is from the graphql-subscriptions package.


graphql-helix - A highly evolved GraphQL HTTP Server 🧬

  •    TypeScript

GraphQL Helix is a collection of utility functions for building your own GraphQL HTTP server. You can check out Building a GraphQL server with GraphQL Helix on DEV for a detailed tutorial on getting started. The following example shows how to integrate GraphQL Helix with Node.js using Express. This example shows how to implement all the basic features, including a GraphiQL interface, subscriptions and support for @stream and @defer. See the rest of the examples for implementations using other frameworks and runtimes. For implementing additional features, see the Recipes section below.

graphql-code-generator - A tool for generating code based on a GraphQL schema and GraphQL operations (query/mutation/subscription), with flexible support for custom plugins

  •    TypeScript

GraphQL Code Generator is a tool that generates code out of your GraphQL schema. Whether you are developing a frontend or backend, you can utilize GraphQL Code Generator to generate output from your GraphQL Schema and GraphQL Documents (query/mutation/subscription/fragment). By analyzing the schema and documents and parsing it, GraphQL Code Generator can output code at a wide variety of formats, based on pre-defined templates or based on custom user-defined ones. Regardless of the language that you're using, GraphQL Code Generator got you covered.

MeiliES - A Rust based event store using the Redis protocol

  •    Rust

MeiliES is an Event Sourcing database that uses the RESP (REdis Serialization Protocol) to communicate. This way it is possible to create clients by reusing the already available protocol. For example, it is possible to use the official Redis command line interface program to communicate with MeiliES. There is a release blog post if you want to know more. An event store is like a Kafka or a Rabbit MQ but it stores events on disk indefinitely. The first purpose of the server is to publish events of a stream to all subscribed clients, note that events are saved in reception order. A client can also specify from which event number (incrementing) it wants to read, therefore it is possible to recover from crashing by reading and reconstructing a state with only new events. Keep in mind that a message queue is not made for event-sourcing.

graphql-playground - 🎮 GraphQL IDE for better development workflows (GraphQL Subscriptions, interactive docs & collaboration)

  •    TypeScript

Future of this repository: see the announcement issue for details. GraphQL IDE for better development workflows (GraphQL Subscriptions, interactive docs & collaboration).

graphql-yoga - 🧘 Fully-featured GraphQL Server with focus on easy setup, performance & great developer experience

  •    TypeScript

To get started with graphql-yoga, follow the instructions in the READMEs of the examples. Once your GraphQLServer is instantiated, you can call the start method on it. It takes two arguments: options, the options object defined above, and callback, a function that's invoked right before the server is started. As an example, the callback can be used to print information that the server has started.

graphql-yoga - 🧘 Fully-featured GraphQL Server with focus on easy setup, performance & great developer experience

  •    TypeScript

To get started with graphql-yoga, follow the instructions in the READMEs of the examples. Once your GraphQLServer is instantiated, you can call the start method on it. It takes two arguments: options, the options object defined above, and callback, a function that's invoked right before the server is started. As an example, the callback can be used to print information that the server has started.

graphql-yoga - 🧘 Fully-featured GraphQL Server with focus on easy setup, performance & great developer experience

  •    TypeScript

To get started with graphql-yoga, follow the instructions in the READMEs of the examples. Once your GraphQLServer is instantiated, you can call the start method on it. It takes two arguments: options, the options object defined above, and callback, a function that's invoked right before the server is started. As an example, the callback can be used to print information that the server has started.

gqlgen - go generate based graphql server library

  •    Go

gqlgen is a Go library for building GraphQL servers without any fuss. It is based on a Schema first approach and provides type safety.

graphql-up - Get a ready-to-use GraphQL API for your schema

  •    Javascript

graphql-up is the fastest way to get a free & ready to use GraphQL API. It works out of the box with Apollo & Relay and supports GraphQL subscriptions. You only need to provide the schema, graphql-up will create a GraphQL API for you. The actual magic happens on the servers sponsored by Graphcool.

kafka-python - Python client for Apache Kafka

  •    Python

Python client for the Apache Kafka distributed stream processing system. kafka-python is designed to function much like the official java client, with a sprinkling of pythonic interfaces (e.g., consumer iterators).kafka-python is best used with newer brokers (0.9+), but is backwards-compatible with older versions (to 0.8.0). Some features will only be enabled on newer brokers. For example, fully coordinated consumer groups -- i.e., dynamic partition assignment to multiple consumers in the same group -- requires use of 0.9+ kafka brokers. Supporting this feature for earlier broker releases would require writing and maintaining custom leadership election and membership / health check code (perhaps using zookeeper or consul). For older brokers, you can achieve something similar by manually assigning different partitions to each consumer instance with config management tools like chef, ansible, etc. This approach will work fine, though it does not support rebalancing on failures. See <https://kafka-python.readthedocs.io/en/master/compatibility.html> for more details.

graphql-engine - Blazing fast, instant realtime GraphQL APIs on Postgres with fine grained access control, also trigger webhooks on database events

  •    Javascript

Hasura GraphQL Engine is a blazing-fast GraphQL server that gives you instant, realtime GraphQL APIs over Postgres, with webhook triggers on database events for asynchronous business logic. Hasura helps you build GraphQL apps backed by Postgres or incrementally move to GraphQL for existing applications using Postgres.

goka - Goka is a compact yet powerful distributed stream processing library for Apache Kafka written in Go

  •    Go

Goka is a compact yet powerful distributed stream processing library for Apache Kafka written in Go. Goka aims to reduce the complexity of building highly scalable and highly available microservices. Goka extends the concept of Kafka consumer groups by binding a state table to them and persisting them in Kafka. Goka provides sane defaults and a pluggable architecture.

react-fullstack-graphql - Starter projects for fullstack applications based on React & GraphQL.

  •    Javascript

For a fully-fledged React & Apollo tutorial, visit How to GraphQL. You can more learn about the idea behind GraphQL boilerplates here. All projects are based on graphql-yoga & Apollo Client.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.