Greyhound - Event bus platform for Elixir

Hey everyone,

About 4 months ago I was looking for an Elixir event bus project I could use to allow child applications in an umbrella app to communicate without directly depending on each other. After searching for a while I wasn’t able to find anything that seemed suitable for what I was wanting to do. As a result, I decided to build Greyhound. An extensible event bus platform for Elixir. It seems to work well and I’m pretty proud of it.

I’m currently looking for any members of the community who would be interested in helping me build, maintain and document this project. I would also LOVE it if an OTP master could provide some feedback on things I could do better.

If you have any interest in helping feel free to comment on this thread or start opening issues and PR’s on the repo.

My immediate goal for this project is putting together some user documentation. If anybody has any interest in helping me there I’d :heart: it very much.

Also, this project was heavily influenced by Ecto and Phoenix.PubSub. So kudos and thank you to the maintainers of those projects.


What is the advantage of introducing your own Registry for pub/sub instead of using the standard library Registry?

Also, I needed more-or-less the same functionality and I have finally Envío built on top of Elixir Registry. You might be interested in having a look.


Regarding the registry, that’s actually a really good question.

I originally went down the route of using Registry and ended up switching to what I have now. I can’t remember exactly why off the top of my head. Could be worth putting some time into and documenting why Registry is a good/bad choice.

1 Like