Skip to content

Stream Store library targeting RDBMS based implementations for .NET

License

Notifications You must be signed in to change notification settings

tural-xanaliyev/SQLStreamStore

 
 

Repository files navigation

SQL Stream Store CI release license code size docs status

⚠️ These libraries are no longer actively maintained.

A stream store library for .NET that specifically targets SQL based implementations. Primarily used to implement Event Sourced applications.

Package Install
SqlStreamStore (includes in-memory version for behaviour testing) NuGet
MS SQL Server / Azure SQL Database NuGet
PostgreSQL / AWS Aurora NuGet
MySQL / AWS Aurora NuGet
Sqlite up for grabs
HTTP Wrapper API On CI Feed
Schema Creation Script Tool NuGet

CI Packages available on Feedz.

Design considerations:

  • Designed to only ever support RDMBS/SQL implementations.
  • Subscriptions are eventually consistent.
  • API is influenced by (but not compatible with) EventStore.
  • Async only.
  • JSON only event and metadata payloads (usually just a string / varchar / etc).
  • No support for System.Transaction, enforcing the concept of the stream as the consistency and transaction boundary.

Building

Building requires Docker. Solution and tests are run on a linux container with .NET Core leveraging SQL Server, Postgres and MySQL as sibling containers.

  • Windows, run .\build.cmd
  • Linux, run ./build.sh

Note: build does not work via WSL.

Help & Support

Ask questions in the #sql-stream-store channel in the ddd-cqrs-es slack workspace. (Join here).

Licences

Licenced under MIT.

About

Stream Store library targeting RDBMS based implementations for .NET

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 94.9%
  • TSQL 3.7%
  • PLpgSQL 1.3%
  • Dockerfile 0.1%
  • Batchfile 0.0%
  • Shell 0.0%