Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Sekiban - an Opinionated Event Sourcing and CQRS Framework using C#. It can store data into Azure Cosmos DB, AWS Dynamo DB or Postgres

License

Notifications You must be signed in to change notification settings

J-Tech-Japan/Sekiban

Repository files navigation

Sekiban - Event Sourcing and CQRS Framework

Sekiban Logo

Sekiban is an event sourcing and CQRS framework for .NET. It supports Azure Cosmos DB, PostgreSQL, and DynamoDB as event stores, with Microsoft Orleans for actor-based scalability.

📚 Documentation: sekiban.dev

Implementations

Note: Sekiban has two implementations. DCB (Dynamic Consistency Boundary) is the recommended approach for new projects. Legacy Sekiban.Pure is deprecated.

Implementation Description Status
Sekiban DCB Dynamic Consistency Boundary - tag-based event sourcing ✅ Recommended
Sekiban.Pure Traditional aggregate-based event sourcing ⚠️ Deprecated
Sekiban.Core Single-server version without actor model ❌ Legacy
Sekiban.ts TypeScript event sourcing 🔬 Alpha

Quick Start

Sekiban DCB (Recommended)

dotnet new install Sekiban.Pure.Templates
dotnet new sekiban-orleans-aspire -n YourProjectName

Cloud Deployment

DCB supports both Azure and AWS:

Component Azure AWS
Event Store Cosmos DB / PostgreSQL DynamoDB
Snapshots Azure Blob Storage Amazon S3
Orleans Clustering Azure Table / Cosmos DB RDS PostgreSQL
Orleans Streams Azure Queue Amazon SQS

What is DCB?

Dynamic Consistency Boundary (DCB) replaces rigid per-aggregate transactional boundaries with a context-sensitive consistency boundary based on event tags. Instead of maintaining multiple streams and coordinating cross-aggregate invariants via sagas, DCB uses a single event stream per bounded context where each event carries tags representing affected entities.

Key benefits:

  • Flexible boundaries: Define consistency scope per command, not per aggregate
  • No saga complexity: Cross-entity invariants without compensating events
  • Optimistic concurrency: Tag-based conflict detection
  • Scalable: Actor model integration with Microsoft Orleans

Learn more at dcb.events

Documentation

MCP (Model Context Protocol)

Sekiban provides MCP support for AI coding assistants:

claude mcp add sekibanDocument --transport sse https://sekiban-doc-mcp.azurewebsites.net/sse

NuGet Packages

DCB Packages (Recommended)

Package Description
Sekiban.Dcb.Core Core DCB framework
Sekiban.Dcb.Orleans.WithResult Orleans integration
Sekiban.Dcb.Postgres PostgreSQL event store
Sekiban.Dcb.CosmosDb Cosmos DB event store
Sekiban.Dcb.DynamoDB DynamoDB event store
Sekiban.Dcb.BlobStorage.AzureStorage Azure Blob snapshots
Sekiban.Dcb.BlobStorage.S3 S3 snapshots

Legacy Packages

Legacy Sekiban.Core and Sekiban.Pure packages are available on NuGet but are no longer recommended for new projects. See core_main branch for legacy documentation.

Sponsors

Sekiban is Apache 2.0 open source. Support us via GitHub Sponsors.

Special Sponsor

special sponsor jts

About

J-Tech Japan (株式会社ジェイテックジャパン) has been developing Sekiban since 2022.

developer J-Tech Japan.

Support

For training or support, contact [email protected].

Contributors

contributors

License

Apache 2.0 - See License

Copyright (c) 2022- J-Tech Japan

About

Sekiban - an Opinionated Event Sourcing and CQRS Framework using C#. It can store data into Azure Cosmos DB, AWS Dynamo DB or Postgres

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Contributors 8