Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/autodidaddict/ergonats
Ergo server processes for interacting with NATS, including event sourcing
https://github.com/autodidaddict/ergonats
erlang event-sourcing nats otp
Last synced: 20 minutes ago
JSON representation
Ergo server processes for interacting with NATS, including event sourcing
- Host: GitHub
- URL: https://github.com/autodidaddict/ergonats
- Owner: autodidaddict
- License: apache-2.0
- Created: 2024-04-24T14:10:08.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-05-22T16:17:52.000Z (8 months ago)
- Last Synced: 2024-05-22T17:36:58.035Z (8 months ago)
- Topics: erlang, event-sourcing, nats, otp
- Language: Go
- Homepage:
- Size: 46.9 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Ergonats
Ergonats is a set of server processes and miscellaneous tools that make it easy to build [ergo](https://github.com/ergo-services/ergo)-based NATS applications.Ergo provides an Erlang/OTP-style supervision hierarchy to Go applications. It's even binary-compatible with existing Erlang/Elixir clusters over the network. If you find yourself constantly creating goroutines that have an infinite `for` loop which in turn has a `select` in it, then you're already in a place where you can realize the benefit of Ergo.
To get a good idea for the inspiration behind Ergo, you might want to read Elixir's [GenServer](https://hexdocs.pm/elixir/GenServer.html) documentation, or you can read the Erlang documentation on [OTP](https://www.erlang.org/doc/design_principles/des_princ).
Ergonats contains some general purpose NATS-related servers like the [PullConsumer](./pull_consumer.go) as well as a complete [event sourcing](./eventsourcing/) library built on top of Ergo.