Ross ROSS = Recommend OSS · open-source software intelligence for agents

ThreeDotsLabs/watermill

Building event-driven applications the easy way in Go. observed · 2026-08-28

github.com/ThreeDotsLabs/watermill · homepage · Go · MIT (permissive) observed · 2026-08-28

Health v2 · maintenance only

95/100

  • Activity 99
  • Release rhythm 87
  • Longevity 100
How is this computed?

round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.

  • gap_med: 53
  • age_days: 2855
  • days_rel: 8
  • days_push: 8
  • n_releases_24m: 12

Full methodology

Adoption not part of the score

9864 stars · 504 forks observed · 2026-08-28

What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded

Watermill is a Go library for building event-driven and message-driven applications over a unified Pub/Sub API. It supports Kafka, RabbitMQ, NATS, PostgreSQL, Redis, and more, with routing, middleware, CQRS, sagas, and event sourcing built in.

Use cases

  • build event-driven applications in go
  • publish and consume messages with kafka or rabbitmq
  • implement cqrs and event sourcing in go
  • process message streams asynchronously
  • implement sagas and outbox pattern
  • switch message brokers without changing app code

When to choose

  • you want a unified pub/sub abstraction over multiple brokers in Go
  • you need event sourcing, CQRS, or sagas without a heavy framework
  • you want middleware-based message routing similar to an HTTP router

When to avoid

  • you need a full message broker itself rather than a client library
  • your project is not in Go
  • you need exactly-once delivery guarantees out of the box

Facets

library · maturity active

message-queue streaming middleware serialization rpc workflow-automation backend microservices developer-tools apis go cross-platform cloud event-driven event-sourcing cqrs sagas pub-sub kafka rabbitmq nats stream-processing reactive messaging docker kubernetes

3 sources

Member repositories

RepositoryRoleHealth v2
ThreeDotsLabs/watermillmain95

For agents

markdown · JSON · MCP: product_card(name="ThreeDotsLabs/watermill")

Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem