Conduit overview

Quiet, fast, annotation-driven events.

Conduit is a tiny event bus for Java with a simple API and a focus on predictable dispatch. It keeps the surface area small: register listeners, post events, and keep moving.

What is Conduit?

Conduit is a lightweight event bus built around annotations. It supports synchronous dispatch by default, optional async dispatch with an Executor, cancellable events, and deterministic ordering.

  • Zero external dependencies.
  • Supports priorities, once-only handlers, and subtype dispatch.
  • Weak listener references to avoid accidental leaks.
  • Dead-event diagnostics when nothing is listening.

Start here

Add the Conduit package to your project and annotate listener methods with @Subscribe.

Core concepts

Event is a marker interface for payloads.
@Subscribe methods receive events on your listener objects.
Cancellable events can be blocked mid-dispatch.