Full Stack Radio

A podcast for developers interested in building great software products. Hosted by Adam Wathan.

95: Frank de Jonge - Implementing Event Sourcing

In this episode, Adam continues his event sourcing discussion with Frank de Jonge from episode 85, going deep into how to actually implement event sourcing using Frank's library EventSauce.

Topics include:

  • How to fetch and reconstitute an aggregate from its events
  • Using generators to make it easy to transform event streams
  • What it looks like to apply an event to an aggregate
  • How to create events and what they look like
  • Implementing a message repository for fetching events from storage
  • How to raise events from inside your aggregates
  • How to persist aggregates at the end of a request
  • What it looks like to insert new events into storage
  • Dispatching events to consumers to produce side effects
  • Using event consumers to create and update projections


  • Netlify, incredibly powerful static site hosting for free
  • Cloudinary, sign up and get 300,000 images/videos, 10GB of storage and 20GB of monthly bandwidth for free