Skip to main content

RailsEventStore in WarmlyYours

WarmlyYours

WarmlyYours is a US-based manufacturer and seller of electric radiant heating, founded in 1999 and headquartered in Lake Zurich, Illinois. Its range covers floor heating, snow melting, roof and pipe heat tape, towel warmers and infrared panels, sold directly online and through a network of trade professionals in the US and Canada. Their products have been installed in more than 600 000 homes.

WarmlyYours introduced RailsEventStore as a durable pub/sub bus for moving side effects out of model callbacks. The usage is deliberately focused: primarily per-record streams (with shared streams such as inventory where it makes sense), payloads made of ids and primitives only, and handlers that re-query the data they need.

Some statistics

as of October 2026
  • Retained events: ~947 000 (90-day retention)
  • Throughput: ~32 600 events per day (7-day average)
  • Event types: 67
  • Subscriptions: 89
  • Event handlers: 89 (67 asynchronous on Sidekiq, 22 synchronous)
  • Stack: Rails 8.1, PostgreSQL with jsonb, RES 3.2

Benefits of RailsEventStore

Independent reactions to business events
new behavior can be added without giving more responsibilities to the model where the event originates
Side effects out of model callbacks
moved into explicit, testable handlers
Asynchronous by default, synchronous where it matters
most work happens in background jobs, while handlers whose result the request has to see stay in-process
Tracing across asynchronous handlers
correlation and causation metadata link related events as they flow through the system
Per-record audit trail
each record's event stream, read backward, powers an audit page alongside row-version history
Operational visibility
RES Browser available to admins, plus daily digests built on reading events by type