• Stars
    star
    5,021
  • Rank 7,911 (Top 0.2 %)
  • Language
    C#
  • License
    Other
  • Created over 11 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

EventStoreDB, the event-native database. Designed for Event Sourcing, Event-Driven, and Microservices architectures

EventStoreDB

EventStoreDB is the event-native database, where business events are immutably stored and streamed. Designed for event-sourced, event-driven, and microservices architectures

What is EventStoreDB

EventStoreDB is a new category of operational database that has evolved from the Event Sourcing community. Powered by the state-transition data model, events are stored with the context of why they have happened. Providing flexible, real-time data insights in the language your business understands.

Download the latest version. For more product information visit the website.

What is Event Store Cloud?

Event Store Cloud is a fully managed cloud offering that's designed to make it easy for developers to build and run highly available and secure applications that incorporate EventStoreDB without having to worry about managing the underlying infrastructure. You can provision EventStoreDB clusters in AWS, Azure, and GCP, and connect these services securely to your own cloud resources.

For more details visit the website.

Licensing

View Event Store Ltd's licensing information.

Docs

For guidance on installation, development, deployment, and administration, see the User Documentation.

Getting started with EventStoreDB

Follow the getting started guide.

Getting started with Event Store Cloud

Event Store can manage EventStoreDB for you, so you don't have to run your own clusters. See the online documentation: Getting started with Event Store Cloud.

Client libraries

This guide shows you how to get started with EventStoreDB by setting up an instance or cluster and configuring it. EventStoreDB supports two protocols: gRPC and TCP(legacy).

EventStoreDB supported gRPC clients

Community supported gRPC clients

Read more in the documentation.

Legacy TCP Clients (support ends with 23.10 LTS)

Deployment

Communities

Contributing

Development is done on the master 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.

If you want to switch to a particular release, you can check out the release branch for that particular release. For example:
git checkout release/oss-v22.10

Building EventStoreDB

EventStoreDB is written in a mixture of C# and JavaScript. It can run on Windows, Linux and macOS (using Docker) using the .NET Core runtime.

Prerequisites

Once you've installed the prerequisites for your system, you can launch a Release build of EventStore as follows:

dotnet build -c Release src

The build scripts: build.sh and build.ps1 are also available for Linux and Windows respectively to simplify the build process.

To start a single node, you can then run:

dotnet ./src/EventStore.ClusterNode/bin/x64/Release/net8.0/EventStore.ClusterNode.dll --dev --db ./tmp/data --index ./tmp/index --log ./tmp/log

Running the tests

You can launch the tests as follows:

dotnet test src/EventStore.sln

Build EventStoreDB Docker image

You can also build a Docker image by running the command:

docker build --tag myeventstore . \
--build-arg CONTAINER_RUNTIME={container-runtime}
--build-arg RUNTIME={runtime}

For instance:

docker build --tag myeventstore . \
--build-arg CONTAINER_RUNTIME=bookworm-slim \
--build-arg RUNTIME=linux-x64

Note: Because of the Docker issue, if you're building a Docker image on Windows, you may need to set the DOCKER_BUILDKIT=0 environment variable. For instance, running in PowerShell:

$env:DOCKER_BUILDKIT=0; docker build --tag myeventstore . `
--build-arg CONTAINER_RUNTIME=bookworm-slim `
--build-arg RUNTIME=linux-x64

Currently, we support the following configurations:

  1. Bookworm slim:
  • CONTAINER_RUNTIME=bookworm-slim
  • RUNTIME=linux-x64
  1. Jammy:
  • CONTAINER_RUNTIME=Jammy
  • RUNTIME=linux-x64
  1. Alpine:
  • CONTAINER_RUNTIME=alpine
  • RUNTIME=linux-musl-x64

You can verify the built image by running:

docker run --rm myeventstore --insecure --what-if

Need help?

More Repositories

1

EventStore.JVM

Event Store JVM Client
Scala
222
star
2

EventStore-Client-NodeJS

A NodeJS client for Event Store
JavaScript
143
star
3

EventStore-Client-Dotnet

Dotnet Client SDK for the Event Store gRPC Client API written in C#
C#
131
star
4

eventstore-docker

Event Store Docker Container
Dockerfile
84
star
5

EventStore-Client-Go

Go Client for Event Store version 20 and above.
Go
81
star
6

EventStore.Akka.Persistence

Event Store Journal for Akka Persistence
Scala
74
star
7

samples

Samples showing practical aspect of EventStoreDB, Event Sourcing
Java
59
star
8

EventStoreDB-Client-Java

Official Asynchronous Java 8+ Client Library for EventStoreDB 20.6+
Java
58
star
9

EventStore.UI

The user interface for Event Store
JavaScript
56
star
10

ClientAPI.NetCore

.NET Core Client
C#
45
star
11

Sklaida

Sample application using Event Store
C#
42
star
12

EventStore.Charts

EventStore official Helm Charts
Shell
29
star
13

csharp-ldap

GitHub mirror of Novell's C# LDAP library (Novell.Directory.Ldap)
C#
23
star
14

replicator

Real-time replication tool
C#
19
star
15

training-advanced-go

Go
19
star
16

buffer-manager

A straightforward way to not make the GC angry in .NET and Mono
C#
17
star
17

training-advanced-dotnet

C#
17
star
18

Webinars

C#
16
star
19

esdb-tui

EventStoreDB Adminstration Tool.
Rust
9
star
20

training-advanced-java

Java
9
star
21

terraform-provider-eventstorecloud

Terraform Provider for Event Store Cloud
Go
8
star
22

documentation

Next-gen documentation website
JavaScript
7
star
23

eventstore.org

CSS
6
star
24

esc

Event Store Cloud CLI
Rust
6
star
25

Automations

Gathers GitHub actions used across the organization.
JavaScript
5
star
26

es-gencert-cli

Event Store Certificate Generation CLI
Go
4
star
27

training-introduction-nodejs

Introduction training material ( TypeScript)
TypeScript
4
star
28

training-introduction-java

Java
4
star
29

training-2021-09

C#
3
star
30

EventStore-Client-gRPC-TestData

Server container with pre-populated data set for testing Event Store gRPC Client SDKs
Dockerfile
3
star
31

training-introduction-dotnet

C#
3
star
32

idsrv4

idsrv4
SCSS
2
star
33

eventstore-packer-templates

Shell
2
star
34

nexus

Rust
2
star
35

eventstore-orleans

C#
2
star
36

Downloads

HTML
2
star
37

pulumi-eventstorecloud

Pulumi provider for Event Store Cloud
Python
2
star
38

HostStat.NET

.NET Library for collecting operating system metrics for Event Store https://www.eventstore.com
C#
2
star
39

Design-System

Event Store component library and frontend utilities
TypeScript
2
star
40

HashChecker

C#
1
star
41

esquery

C#
1
star
42

training-simple-examples

Introductory examples on aggregates and read models
C#
1
star
43

download.geteventstore.com

Downloadable files and binaries
HTML
1
star
44

EventStoreDB-Client-Dotnet-Legacy

C#
1
star