StreamStore.Contracts
0.15.0
dotnet add package StreamStore.Contracts --version 0.15.0
NuGet\Install-Package StreamStore.Contracts -Version 0.15.0
<PackageReference Include="StreamStore.Contracts" Version="0.15.0" />
<PackageVersion Include="StreamStore.Contracts" Version="0.15.0" />
<PackageReference Include="StreamStore.Contracts" />
paket add StreamStore.Contracts --version 0.15.0
#r "nuget: StreamStore.Contracts, 0.15.0"
#:package StreamStore.Contracts@0.15.0
#addin nuget:?package=StreamStore.Contracts&version=0.15.0
#tool nuget:?package=StreamStore.Contracts&version=0.15.0
StreamStore
Asynchronous event sourcing.
Library provides a logical layer for storing and querying events as a stream.
Heavily inspired by Greg Young's Event Store and Streamstone
solutions.
Overview
Designed to be easily extended with custom storage backends.
Despite the fact that component implements a logical layer for storing and querying events as a stream,
it does not provide functionality of DDD aggregate
, such as state mutation, conflict resolution etc., but serves more as persistence layer
for it.
Packages
Name | Description | Package |
---|---|---|
StreamStore | Asynchronous event streaming | |
StreamStore.Storage | Base implementation of storage | |
StreamStore.Serialization.Protobuf | Protobuf event serializer |
Storage packages
Name | Description | Concurrency Control | Multitenancy | Event Duplication Detection | Package |
---|---|---|---|---|---|
StreamStore.NoSql.Cassandra | Apache Cassandra and Azure Cosmos DB for Apache Cassandra storage |
Optimistic |
✅ | ❌ | |
StreamStore.Sql.PostgreSql | PostgreSQL storage |
Optimistic |
✅ | ✅ | |
StreamStore.Sql.Sqlite | SQLite storage |
Optimistic |
✅ | ✅ | |
StreamStore.InMemory | In-memory storage is provided for testing and educational purposes only | Optimistic |
✅ | ✅ | |
StreamStore.S3.AWS | Amazon S3 storage |
Pessimistic |
:x: | ❌ | |
StreamStore.S3.B2 | Backblaze B2 storage (not working at the moment!) |
Pessimistic |
:x: | ❌ |
Features
The general idea is to highlight the common characteristics and features of event sourcing storage:
- Asynchronous read and write operations.
- Multitenancy support.
- Automatic provisioning of storage schema.
- Event ordering.
- Serialization/deserialization of events.
- Optimistic concurrency control.
- Event duplication detection based on event ID.
- Storage agnostic test framework, including benchmarking test scenarios.
- Binary serialization support.
- Custom event properties.
More information you can find in the documentation.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- FluentValidation (>= 11.11.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.5)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
0.15.0 | 162 | 5/30/2025 |
0.14.0 | 182 | 5/29/2025 |
0.13.0 | 191 | 5/25/2025 |
0.12.0 | 157 | 4/5/2025 |
0.11.0 | 306 | 11/26/2024 |
0.9.0 | 122 | 11/17/2024 |
0.8.0 | 276 | 11/15/2024 |
0.7.1 | 153 | 11/11/2024 |
0.7.0 | 245 | 11/8/2024 |
0.6.0 | 237 | 10/18/2024 |
0.5.0 | 179 | 10/16/2024 |
0.4.0 | 238 | 10/8/2024 |
0.3.0 | 154 | 10/8/2024 |
0.2.2 | 415 | 9/30/2024 |