Introduction
Eventuous for Go
Section titled “Eventuous for Go”Production-grade Event Sourcing library for Go, ported from Eventuous (.NET).
New to Eventuous Go? Start here:
- Introduction to concepts — what Event Sourcing is, why Eventuous Go exists, and its design philosophy
- Quick Start — build a complete booking system step by step
Design principles
Section titled “Design principles”- Functional-first — pure functions over OOP, type switch fold over handler registration
- Idiomatic Go — composition over inheritance, middleware chains,
context.Context+ errors - Multi-module — import only what you need, no transitive dependency bloat
Modules
Section titled “Modules”| Module | Import | Description |
|---|---|---|
| core | github.com/eventuous/eventuous-go/core | Domain, persistence, command services, subscriptions |
| kurrentdb | github.com/eventuous/eventuous-go/kurrentdb | KurrentDB/EventStoreDB store and subscriptions |
| otel | github.com/eventuous/eventuous-go/otel | OpenTelemetry tracing and metrics |
Installation
Section titled “Installation”go get github.com/eventuous/eventuous-go/corego get github.com/eventuous/eventuous-go/kurrentdb