Skip to content

This project is a Proof of Concept (PoC) built with .NET, aiming to demonstrate the application of the Event Sourcing pattern using RavenDB as the database.

License

Notifications You must be signed in to change notification settings

Note45/poc-ravendb-vault-gps

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

29 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

RavenDB Vault GRPS

This project is a Proof of Concept (PoC) built with .NET, aiming to demonstrate the application of the Event Sourcing pattern using RavenDB as the database.

The PoC explores concepts such as event persistence, state rehydration, and query projections (read models), showing how RavenDB can be leveraged as an Event Store in distributed applications.


๐Ÿš€ Goals

  • Validate the use of RavenDB as an event store.
  • Demonstrate how to implement Event Sourcing in .NET.
  • Simulate write and read operations based on events.
  • Provide a starting point for applications adopting event-driven architectures.

๐Ÿ—๏ธ Architecture

The PoC follows the principles of CQRS + Event Sourcing:

  • Command Side (Write Model): handles commands and generates events that describe state changes.
  • Event Store (RavenDB): stores all events immutably.
  • Projections (Read Model): built by applying events to provide optimized queries.

๐Ÿ”ง Tech Stack

  • .NET
  • RavenDB (Event Store and Projections)
  • gRPC (service communication)
  • CQRS + Event Sourcing

โš™๏ธ How to Run

Prerequisites

Steps

  1. Clone the repository:
   git clone https://github.com/Note45/poc-ravendb-vault-gps.git
   cd ravendb-vault-grps
  1. Create base vault-gps in RavenDB

  2. Configure the RavenDB connection string in appsettings.json.

  3. Run the project:

  dotnet run --project Vault.Gps/Vault.Gps.csproj 
  1. The RavenDB Vault GRPS API will be available at:

http://localhost:5247/swagger

About

This project is a Proof of Concept (PoC) built with .NET, aiming to demonstrate the application of the Event Sourcing pattern using RavenDB as the database.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published