From 92c0569b79f8f722fc963b8f87a0355908ba4b94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mi=C5=82osz=20Sm=C3=B3=C5=82ka?= Date: Fri, 30 Aug 2024 15:23:06 +0200 Subject: [PATCH] Update README.md (by Terraform) --- README.md | 28 ++++------------------------ 1 file changed, 4 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index 095d269..136428c 100644 --- a/README.md +++ b/README.md @@ -4,31 +4,17 @@ [![CI Status](https://github.com/ThreeDotsLabs/watermill-nats/actions/workflows/master.yml/badge.svg)](https://github.com/ThreeDotsLabs/watermill-nats/actions/workflows/master.yml) [![Go Report Card](https://goreportcard.com/badge/github.com/ThreeDotsLabs/watermill-nats)](https://goreportcard.com/report/github.com/ThreeDotsLabs/watermill-nats) -This is Pub/Sub for the [Watermill](https://watermill.io/) project targeting NATS - primarily streaming use cases via -[JetStream](https://docs.nats.io/nats-concepts/jetstream). - -It contains two packages, `/pkg/nats` being the current primary implementation. This supports JetStream -(default) and also some messaging use cases with core NATS but those aren't a perfect fit for watermill due -to fire and forget nature of the system - acks and nacks for example are implemented as no-ops in that mode. -However if you accept the limitations it does open up some interesting options, for example a system with -publishers that don't require confirmation could use the core NATS mode but send to subjects included in JetStream -subscriptions. This lies far enough outside the streaming use cases of watermill that its included in an -experimental fashion only but should work if resources are provisioned correctly. It can be nice to use watermill -as the sole interface to NATS in such a system if eg request/reply is not needed. - -There is also an experimental `/pkg/jetstream` package that tracks with the experimental upstream -[JetStream API](https://github.com/nats-io/nats.go/blob/main/jetstream/README.md). This is targeted for a -stable API within watermill by v2.1 of this package. Right now it only supports a very minimal configuration -subset but does make an effort to preserve lower level access to the underlying stream provisioning API. You can -see an example [here](./_examples/jetstream_new.go). +This is Pub/Sub for the [Watermill](https://watermill.io/) project. +It targets NATS - primarily streaming use cases via [JetStream](https://docs.nats.io/nats-concepts/jetstream). -All Pub/Sub implementations can be found at [https://watermill.io/pubsubs/](https://watermill.io/pubsubs/). +See [DEVELOPMENT.md](./DEVELOPMENT.md) for more information about running and testing. Watermill is a Go library for working efficiently with message streams. It is intended for building event driven applications, enabling event sourcing, RPC over messages, sagas and basically whatever else comes to your mind. You can use conventional pub/sub implementations like Kafka or RabbitMQ, but also HTTP or MySQL binlog if that fits your use case. +All Pub/Sub implementations can be found at [https://watermill.io/pubsubs/](https://watermill.io/pubsubs/). Documentation: https://watermill.io/ @@ -48,12 +34,6 @@ If you didn't find the answer to your question in [the documentation](https://wa Please join us on the `#watermill` channel on the [Three Dots Labs Discord](https://discord.gg/QV6VFg4YQE). -Every bit of feedback is very welcome and appreciated. Please submit it using [the survey](https://www.surveymonkey.com/r/WZXD392). - -## Why the name? - -It processes streams! - ## License [MIT License](./LICENSE)