Skip to content
CAI
Produce a survey ↗Verify a survey

ThreeDotsLabs/watermill

Watermill is a Go library that provides a unified interface for building event-driven and real-time applications by abstracting various message brokers. It offers a comprehensive suite of components for message routing, CQRS, and transactional event handling, alongside middleware for reliability and observability. The system supports a wide range of pub/sub backends, including Kafka, RabbitMQ, AWS SNS/SQS, and SQL databases, with examples demonstrating their integration.

65.9

Adequate · 3 August 2026

15k

lines of production code

Go

primary language

2

bus factor · 93 authors in all

3

measurements over time

CAI band scale
CAI trend line

How it got here

2018–2019 · Watermill v1.0.0 release and ecosystem expansion

This period centered on the release of Watermill v1.0.0, which established a stable, production-ready API by removing legacy event store implementations and in-memory Pub/Sub components. The work significantly expanded the library's capabilities through new middleware, CQRS, and metrics components, while simultaneously broadening the ecosystem with extensive examples for Kafka, AMQP, NATS, and SQL-based messaging systems.

35 changes

2020–2025 · Component and example expansion

This period focused on expanding the library's capabilities by introducing new components for message routing, delayed processing, and request/reply patterns. The team also significantly enriched the repository with diverse, validated examples covering various pub/sub backends and architectural patterns like CQRS and consumer groups.

16 changes

CAI lens gauges

Survey your own repository

ThreeDotsLabs/watermill was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point the surveyor at a repository you know and see whether you agree with it.

Survey a repository

About this page

  • The description of this project is derived from its own commit history, not from its README.
  • The score is its highest published measurement, taken on 3 August 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 19b6816f64 — the exact code this score is about.
  • Scored under rubric rubric-2026.08.19. Score the same commit under that rubric and you get the same number.
CAI link cards