I built a change data capture tool to synchronize normalized Postgres data into denormalized Elasticsearch documents, and my employer let me open-source it yesterday.
We tried some existing solutions but they weren't a fit, so we're using Sinker now. I hope others with similar use cases will find it helpful, too.
-Loren