NStore.Domain
0.20.1
dotnet add package NStore.Domain --version 0.20.1
NuGet\Install-Package NStore.Domain -Version 0.20.1
<PackageReference Include="NStore.Domain" Version="0.20.1" />
<PackageVersion Include="NStore.Domain" Version="0.20.1" />
<PackageReference Include="NStore.Domain" />
paket add NStore.Domain --version 0.20.1
#r "nuget: NStore.Domain, 0.20.1"
#:package NStore.Domain@0.20.1
#addin nuget:?package=NStore.Domain&version=0.20.1
#tool nuget:?package=NStore.Domain&version=0.20.1
<img src="logo/logo.png" alt="logo" height="120" align="right" />
NStore
(Yet Another) Opinionated Event Sourcing Library
NStore started as a playground for experimenting with .net Standard, async and a simple API for a Sql/NoSql backed EventStore.
After years of experience running NEventStore in production we wrote NStore from scratch with a simpler and extensible API.
CI Status
Build server | Platform | Build Status | |
---|---|---|---|
AppVeyor | Windows | <img src="https://ci.appveyor.com/api/projects/status/github/proximosrl/nstore?svg=true" alt="Build status" > | |
GH Actions | Linux | <img src="https://github.com/ProximoSrl/NStore/workflows/NStore%20CI/badge.svg" alt="Build status" > | |
Azdo | Windows | <img src="https://dev.azure.com/gianmariaricci/Public/_apis/build/status/130" alt="Build status" > |
Quickstart
Setup the streams factory
var streams = new StreamsFactory(new InMemoryPersistence());
open the stream
var post = streams.Open("post/123");
append new data
await post.AppendAsync(new Favorited("users/200", DateTime.UtcNow));
read the stream
await post.ReadAsync(chunk =>
{
Console.WriteLine($"{chunk.PartitionId} #{chunk.Index} => {chunk.Payload}");
return Subscription.Continue;
});
Process the stream
var favs = await post.AggregateAsync<UniqueFavs>();
Console.WriteLine($"{favs.Count} users added '{post.Id}' as favorite");
Full source at src/NStore.Quickstart/Program.cs
Learn
The source comes with a Sample App to illustrate some basic stuff you can do.
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 | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. 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.0
- NStore.Core (>= 0.20.1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on NStore.Domain:
Package | Downloads |
---|---|
NStore.Tpl
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
0.20.1 | 196 | 7/29/2025 |
0.20.0 | 488 | 12/17/2024 |
0.20.0-mongo-driver-3-0011 | 142 | 12/9/2024 |
0.20.0-alpha0011 | 140 | 12/17/2024 |
0.20.0-alpha0010 | 139 | 10/28/2024 |
0.19.0 | 219 | 10/28/2024 |
0.19.0-alpha0028 | 129 | 10/28/2024 |
0.19.0-alpha0027 | 130 | 9/16/2024 |
0.19.0-alpha0019 | 147 | 7/15/2024 |
0.19.0-alpha0016 | 142 | 7/4/2024 |
0.19.0-alpha0015 | 149 | 7/3/2024 |
0.19.0-alkampfergit-add0024 | 153 | 8/28/2024 |
0.19.0-alkampfergit-add0020 | 155 | 8/28/2024 |
0.18.3 | 415 | 9/16/2024 |
0.18.3-beta0001 | 131 | 9/16/2024 |
0.18.1 | 292 | 7/4/2024 |
0.18.1-beta0015 | 147 | 7/4/2024 |
0.18.0 | 263 | 7/3/2024 |
0.18.0-alpha0018 | 160 | 7/3/2024 |
0.18.0-alpha0016 | 150 | 6/12/2024 |
0.18.0-alpha0015 | 165 | 6/12/2024 |
0.18.0-alpha0013 | 144 | 6/12/2024 |
0.18.0-alpha0010 | 149 | 6/11/2024 |
0.18.0-alpha0009 | 147 | 6/11/2024 |
0.18.0-alpha0008 | 159 | 6/11/2024 |
0.18.0-alpha0007 | 185 | 1/4/2024 |
0.18.0-alkampfergit-rem0015 | 132 | 6/12/2024 |
0.18.0-alkampfergit-rem0014 | 156 | 6/12/2024 |
0.18.0-alkampfergit-cen0017 | 154 | 7/3/2024 |
0.18.0-alkampfergit-cen0016 | 132 | 6/12/2024 |
0.18.0-alkampfergit-add0021 | 148 | 6/12/2024 |
0.18.0-alkampfergit-add0020 | 133 | 6/12/2024 |
0.18.0-alkampfergit-add0019 | 152 | 6/12/2024 |
0.18.0-alkampfergit-add0018 | 147 | 6/12/2024 |
0.18.0-alkampfergit-add0017 | 128 | 6/12/2024 |
0.18.0-alkampfergit-add0013 | 153 | 6/12/2024 |
0.17.1-beta0001 | 179 | 1/4/2024 |
0.17.0 | 522 | 1/4/2024 |
0.17.0-beta0001 | 177 | 1/4/2024 |
0.17.0-alpha0009 | 183 | 8/16/2023 |
0.17.0-alpha0006 | 181 | 8/16/2023 |
0.17.0-alpha0002 | 205 | 7/26/2023 |
0.16.2-beta0001 | 164 | 11/25/2023 |
0.16.1 | 302 | 8/16/2023 |
0.16.0 | 284 | 7/26/2023 |
0.16.0-beta0000 | 187 | 7/26/2023 |
0.16.0-alpha0008 | 200 | 7/11/2023 |
0.15.1 | 314 | 7/11/2023 |
0.15.1-beta0002 | 195 | 7/11/2023 |
0.15.0-beta0000 | 199 | 5/4/2023 |
0.15.0-alpha0006 | 224 | 2/13/2023 |
0.15.0-alpha0002 | 205 | 5/4/2023 |
0.14.0 | 634 | 2/13/2023 |
0.14.0-tags-0-13-0-0001 | 230 | 12/19/2022 |
0.14.0-multi-partition-0010 | 239 | 2/7/2023 |
0.14.0-beta0000 | 222 | 2/10/2023 |
0.14.0-alpha0010 | 244 | 2/8/2023 |
0.13.1 | 608 | 12/19/2022 |
0.13.0-alpha0017 | 230 | 11/4/2022 |
0.13.0-alpha0016 | 224 | 11/4/2022 |
0.13.0-alpha0013 | 250 | 8/30/2022 |
0.13.0-alpha0000 | 231 | 8/30/2022 |
0.12.1 | 635 | 11/4/2022 |
0.12.1-beta0013 | 260 | 11/4/2022 |
0.12.0 | 774 | 8/30/2022 |
0.12.0-alpha0069 | 269 | 5/31/2022 |
0.12.0-alpha0058 | 3,508 | 11/25/2021 |
0.12.0-alpha0055 | 340 | 11/5/2021 |
0.12.0-alpha0052 | 361 | 11/4/2021 |
0.12.0-alpha0049 | 327 | 9/23/2021 |
0.11.5 | 875 | 5/27/2022 |
0.11.5-beta0001 | 265 | 5/27/2022 |
0.11.3 | 3,854 | 11/25/2021 |
0.11.2 | 713 | 11/5/2021 |
0.11.1 | 598 | 11/4/2021 |
0.11.0 | 591 | 9/23/2021 |
0.11.0-libupgrade0033 | 406 | 4/8/2021 |
0.11.0-libupgrade0032 | 403 | 4/8/2021 |
0.11.0-libupgrade0031 | 414 | 4/8/2021 |
0.11.0-libupgrade0030 | 412 | 4/8/2021 |
0.11.0-fixbuild0030 | 414 | 4/7/2021 |
0.11.0-alpha0074 | 370 | 9/22/2021 |
0.11.0-alpha0066 | 377 | 5/10/2021 |
0.11.0-alpha0055 | 385 | 5/10/2021 |
0.11.0-alpha0047 | 407 | 5/6/2021 |
0.11.0-alpha0034 | 392 | 4/15/2021 |
0.11.0-alpha0029 | 423 | 4/7/2021 |
0.10.7 | 619 | 6/11/2021 |
0.10.7-ci0002 | 361 | 6/11/2021 |
0.10.7-beta0003 | 384 | 6/11/2021 |
0.10.7-beta0001 | 346 | 6/11/2021 |
0.10.6 | 622 | 5/10/2021 |
0.10.6-beta0006 | 400 | 5/7/2021 |
0.10.6-beta0005 | 408 | 5/7/2021 |
0.10.6-beta0004 | 424 | 5/7/2021 |
0.10.6-beta0002 | 444 | 5/7/2021 |
0.10.4 | 752 | 1/7/2021 |
0.10.0 | 687 | 1/7/2021 |
0.9.0 | 873 | 5/24/2020 |
0.9.0-pre0035 | 596 | 2/13/2020 |
0.9.0-pre0034 | 588 | 2/12/2020 |
0.8.0 | 964 | 4/4/2019 |
0.6.0 | 946 | 3/14/2019 |
0.4.0 | 3,291 | 3/20/2018 |
0.3.0 | 1,925 | 1/11/2018 |
0.2.1-beta0002 | 1,047 | 12/23/2017 |
0.2.0-sqlitebinary0111 | 1,050 | 11/21/2017 |
0.2.0-pre0091 | 1,097 | 11/1/2017 |
0.2.0-pre0064 | 1,068 | 9/6/2017 |
0.2.0-pre0045 | 1,075 | 8/30/2017 |