From ee26c55befe7ce44f65d5ea0b1dc6f3184b321c6 Mon Sep 17 00:00:00 2001 From: Suraj Keshri Date: Sat, 30 Mar 2024 12:32:03 -0400 Subject: [PATCH] update docs --- website/docs/faq.md | 2 +- website/docs/getting-started/installation.md | 5 +++++ website/docs/principles/schema-specification.md | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/website/docs/faq.md b/website/docs/faq.md index c9cfff6..f0965f2 100644 --- a/website/docs/faq.md +++ b/website/docs/faq.md @@ -18,7 +18,7 @@ JSON schema can be verbose to write. Also, it is not easily extendable. GraphQL ## Is this library production ready? -The library has running in production at https://gully.to for last nine months. We are using this library for event based communication across seven microservices and for consuming external webhooks. Since the company is a small startup, we have not handled high volume. Take this as more of a proof of concept. We would love to help any organization who is interested in using this library. Send us a private message on Twitter! +I have used this library in multiple personal and client projects. This library was originally developed for a startup (now closed) whose backend involved event based communication across seven microservices and for consuming external webhooks. It worked really well and helped up easily build an event driven architecture. We would love to help any organization who is interested in using this library. ## How do I contribute? diff --git a/website/docs/getting-started/installation.md b/website/docs/getting-started/installation.md index 714e48d..63e55e7 100644 --- a/website/docs/getting-started/installation.md +++ b/website/docs/getting-started/installation.md @@ -6,6 +6,11 @@ sidebar_position: 3 To start using this library, you need to decide the message broker you are using. The core library, `graphql-eventbus`, provides a framework to create an event bus powered by GraphQL. We have two libraries that provides an implementation of the event bus using `RabbitMQ` and `Google Pubsub` as the message broker. It's very easy to create an implementation using your favorite message broker as covered in the [Create Your Bus](/docs/tour/create-your-bus/) section in the tour. To follow the example in `examples/rabbit-mq` uses RabbitMQ event bus. +**Core** +```bash +npm i graphql-eventbus +``` + **RabbitMQ** ```bash diff --git a/website/docs/principles/schema-specification.md b/website/docs/principles/schema-specification.md index 9b54c57..968d2cd 100644 --- a/website/docs/principles/schema-specification.md +++ b/website/docs/principles/schema-specification.md @@ -9,7 +9,7 @@ There are a certain rules that must be followed when defining a schema for Graph - Each published event must have a name under the root `Query` field in the SDL. - The return type of each event (i.e. the type of each field of the root query field) must be a non-null object. - `Mutation` root field is not allowed. -- Abstract types like `Union` and `Interface` are not allowed. The reason being the graphql executor requirer a resolver function to resolve the abstract types, which makes the architecture more complex. +- Abstract types like `Union` and `Interface` are not allowed. The reason being the graphql executor requirer a resolver function to resolve the abstract types. Since we are using the default resolver for each field when a JSON payload is received, and an abstract type requires a custom resolver (`__resolveType`), we do not allow them in the event schema. However this is not necessarily a limitation as there are alternative ways to design your types. - Arguments are not allowed for any field. - Input type is not allowed