Hi HN,
pgstream is an open source CLI tool and Go library for Postgres logical replication events. We have some bigger plans with it, but as of now its main "differentiator" is that it includes not only data changes but also DDL changes in the same ordered and consistent stream.
We have developed this because in the Xata platform we handle automatic replication from Postgres to Elasticsearch/OpenSearch. Initially schema changes were problematic because they required us intercepting them at the API layer and then apply them to the search engine. But if the replication is slightly delayed or faster than the update, you can get replication errors. Having a single consistent stream with both makes consumer a lot more reliable in the face of schema changes.
The way it works is that pgstream installs event triggers for DDL changes and maintains a "shadow" representation of the schema in a separate table. The changes to this table are included in the replication stream.
Besides the Elasticsearch/OpenSearch output, pgstream also comes with a simple "webhook" output which is a simple way to get webhooks for any changes that happen in Postgres (data & schema).
GitHub repo: https://github.com/xataio/pgstream