Awesome
SQL Stream Store <img src="https://img.shields.io/badge/slack-DDD--CQRS--ES%20%23sql--stream--store-yellow.svg?logo=slack">
:warning: 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) | |
MS SQL Server / Azure SQL Database | |
PostgreSQL / AWS Aurora | |
MySQL / AWS Aurora | |
Sqlite | up for grabs |
HTTP Wrapper API | On CI Feed |
Schema Creation Script Tool |
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.