A simple, opinionated CQRS/event-sourcing library for .NET. A fork of my original Regalo library, with a move back to integer version numbers and a few lessons learned.
C# PowerShell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
Inforigami.Regalo.Core.ConsoleLoggerTest
Inforigami.Regalo.Core.Tests.DomainModel
Inforigami.Regalo.Core.Tests.Unit
Inforigami.Regalo.Core
Inforigami.Regalo.EventStore.Tests.Unit
Inforigami.Regalo.EventStore
Inforigami.Regalo.Interfaces
Inforigami.Regalo.ObjectCompare.Tests.Unit
Inforigami.Regalo.ObjectCompare
Inforigami.Regalo.RavenDB.Tests.Unit
Inforigami.Regalo.RavenDB
Inforigami.Regalo.SqlServer.Tests.Unit
Inforigami.Regalo.SqlServer
Inforigami.Regalo.Testing.Tests.Unit
Inforigami.Regalo.Testing
System.Configuration.pdb/3D222792301C4165BFD306B1DD544BD91
System.Core.pdb/7DDDB3BBC6AF408B87C3F85F8621B6592
System.Xml.pdb/D35FCA77B0FE4F869BF3D36336EE3E5D2
System.pdb/9294FFF8BEDC4EF3A2F47BCCED799B0B2
.gitignore
BuildPackage.ps1
Contributing.md
Get-Version.ps1
Inforigami.Regalo.sln
Inforigami.Regalo.sln.DotSettings
LICENSE
New-SemverTag.ps1
Packaging Regalo.txt
PushPackage.ps1
README.md
pingme.txt
write-assemblyinfo.ps1

README.md

What is it?

A simple event sourcing "framework" based on Greg Young's work in DDD, CQRS and Event Sourcing. In truth, as you'll see, it's barely a "framework" as much of a bunch of reusable code. :)

Why'd you call it "Inforigami.Regalo"?

Well it's an event sourcing framework, and events tell a story. You might "regale" someone with a story, and I just swopped the trailing "e" for an "o" to make it sound cool. Hence "Inforigami.Regalo". I pronounce it "regarlo", in case you're wondering.

How do I use it?

Inforigami.Regalo comes in two significant parts - there's Regalo.Core itself. This provides a bunch of interfaces and a Greg Young-inspired AggregateRoot class to derive your... aggregate roots from. You also get an event sourcing repository implementation. What's missing from that picture is the actual persistence. That's where Inforigami.Regalo.RavenDB (and at some point Inforigami.Regalo.EventStore and Inforigami.Regalo.SqlServer) come in. They provide an event store implementation.

Getting started is a case of installing one of the event store implementation packages via nuget.org e.g. install-package Inforigami.Regalo.Ravendb, then configuring a few dependencies (all Inforigami.Regalo libraries rely on the Dependency Inversion principle).

I'll try to build a "getting started" page on the wiki asap.