
KurrentDB is a database that's engineered for modern software applications and event-driven architectures. Its event-native design simplifies data modeling and preserves data integrity while the integrated streaming engine solves distributed messaging challenges and ensures data consistency.
"KurrentDB Client Go" is the client for talking to KurrentDB.
The fastest way to add this client to a project is to run go get github.com/kurrent-io/KurrentDB-Client-Go@latest
with
go, See INSTALL.md for detailed installation instructions and troubleshooting.
Join our global community of developers.
Development is done on the main
branch.
We attempt to do our best to ensure that the history remains clean and to do so, we generally ask contributors to squash
their commits into a set or single logical commit.
The client is built using the Go programming language. To build the client, you need to have Go installed on your machine. You can download it from the official Go website. Once you have Go installed, you can build the client by running the following command in the root directory of the project:
make build
The build scripts: build.sh
and build.ps1
are also available for Linux and Windows respectively to simplify the
build process.
Testing requires Docker and Docker Compose to be installed.
Start all required KurrentDB services using the provided docker-compose
configuration:
make start-kurrentdb
To stop the services, you can run:
make stop-kurrentdb
You can launch the tests as follows:
make test
Alternatively, you can run the tests using the go test
command:
go test ./...
By default, the test suite uses the Docker image: docker.kurrent.io/eventstore/eventstoredb-ee:lts
. To run the tests
with a different image, set the environment variables listed below.
For example, to use the commercial image
docker.kurrentio/eventstore-ee/eventstoredb-commercial:23.10.5-commercialb-bookworm-slim
, configure your environment
with:
Variable Name | Example Value |
---|---|
EVENTSTORE_DOCKER_REGISTRY |
docker.kurrentio/eventstore-ee |
EVENTSTORE_DOCKER_IMAGE |
eventstoredb-commercial |
EVENTSTORE_DOCKER_TAG |
23.10.5-commercialb-bookworm-slim |
These variables combine to form the complete image reference used during testing.