랭킹으로 돌아가기

kurrent-io/KurrentDB

C#kurrent.io

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.

cqrseventsourcingeventstoreevent-sourcingevent-storedatabase
스타 성장
스타
5.8k
포크
678
주간 성장
이슈
114
2k4k
2012년 9월2017년 4월2021년 12월2026년 7월
README
Kurrent

What is Kurrent

Event Store – the company and the product – are rebranding as Kurrent.

  • The flagship product will be referred to as “the Kurrent event-native data platform” or “the Kurrent platform” or simply “Kurrent"
  • EventStoreDB will be referred to as KurrentDB
  • Event Store Cloud will now be called Kurrent Cloud

Read more about the rebrand in the rebrand FAQ.

What is KurrentDB

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.

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

What is Kurrent Cloud?

Kurrent 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 KurrentDB without having to worry about managing the underlying infrastructure. You can provision KurrentDB clusters in AWS, Azure, and GCP, and connect these services securely to your own cloud resources.

For more details visit the website.

Licensing

View KurrentDB's licensing information.

Docs

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

Getting started with KurrentDB

Follow the getting started guide.

Getting started with Kurrent Cloud

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

Client libraries

This guide shows you how to get started with KurrentDB by setting up an instance or cluster and configuring it. KurrentDB supports the gRPC protocol.

KurrentDB supported clients

Community supported clients

Read more in the documentation.

Legacy clients (support ends with EventStoreDB v23.10 LTS)

Deployment

Communities

Join our global community of developers.

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, commits are automatically squashed into a single logical commit when pull requests are merged.

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/v25.0

Building KurrentDB

KurrentDB 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 KurrentDB as follows:

dotnet build -c Release

To start a single node, you can then run:

dotnet run --project ./src/KurrentDB/KurrentDB.csproj -c Release -e ASPNETCORE_ENVIRONMENT=Development -- --dev --db ./tmp/data --index ./tmp/index --log ./tmp/log

Alternatively, you can run the KurrentDB - Dev DB profile pre-configured in launchSettings.json:

dotnet run --project ./src/KurrentDB/KurrentDB.csproj -c Release -lp "KurrentDB - Dev DB"

Running the tests

You can launch the tests as follows:

dotnet test --solution KurrentDB.slnx

Build KurrentDB Docker image

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

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

For instance:

docker build --tag mykurrentdb . \
--build-arg CONTAINER_RUNTIME=noble \
--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 mykurrentdb . `
--build-arg CONTAINER_RUNTIME=noble `
--build-arg RUNTIME=linux-x64

Currently, we support the following configurations:

  1. Noble:
  • CONTAINER_RUNTIME=noble
  • RUNTIME=linux-x64

You can verify the built image by running:

docker run --rm mykurrentdb --insecure --what-if

More resources

관련 저장소
kgrzybek/modular-monolith-with-ddd

Full Modular Monolith application with Domain-Driven Design approach.

C#MIT Licensedddddd-architecture
13.9k2.2k
ThreeDotsLabs/watermill

Building event-driven applications the easy way in Go.

GoGo ModulesMIT Licensewatermillevent-driven
watermill.io
9.8k500
redpanda-data/connect

Fancy stream processing made operationally mundane

GoGo Modulesmessage-queuestream-processing
docs.redpanda.com/connect/home/
8.7k950
EduardoPires/EquinoxProject

Web Application ASP.NET 9 using Clean Architecture, DDD, CQRS, Event Sourcing and a lot of good practices

C#MIT Licenseequinoxcqrs
equinoxproject.azurewebsites.net
6.8k1.7k
ThreeDotsLabs/wild-workouts-go-ddd-example

Go DDD example application. Complete project to show how to apply DDD, Clean Architecture, and CQRS by practical refactoring.

GoGo ModulesMIT Licensegogolang
threedots.tech
6.4k584
EventStore/EventStore

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

C#Othercqrseventsourcing
eventstore.com
5.4k659
oskardudycz/EventSourcing.NetCore

Examples and Tutorials of Event Sourcing in .NET

C#Creative Commons Attribution Share Alike 4.0 Internationalevent-sourcingcqrs
event-driven.io
3.7k545
AxonIQ/AxonFramework

Framework for Evolutionary Message-Driven Microservices on the JVM

JavaMavenApache License 2.0javacqrs
axoniq.io
3.6k854
ngxs/store

🚀 NGXS - State Management for Angular

TypeScriptnpmMIT Licensecqrsredux
ngxs.io
3.5k404
AxonFramework/AxonFramework

Framework for Evolutionary Message-Driven Microservices on the JVM

JavaMavenApache License 2.0javacqrs
axoniq.io
3.4k798
CodelyTV/php-ddd-example

🐘🎯 Hexagonal Architecture + DDD + CQRS in PHP using Symfony 7

PHPPackagistcqrscodelytv
pro.codely.tv/library/ddd-en-php
3.1k1.1k
kgrzybek/sample-dotnet-core-cqrs-api

Sample .NET Core REST API CQRS implementation with raw SQL and DDD using Clean Architecture.

C#MIT Licensedddddd-example
kamilgrzybek.com/design/simple-cqrs-implementation-with-raw-sql-and-ddd/
3.1k676