Open-source projects
.Net Flow .NET C# ASP.NET MVC
ASP.NET MVC web application for sharing links that demonstrates using CQRS with event-sourcing.
A sample web application for link sharing inspired by RubyFlow.
Demonstrates implementing the CQRS/ES architecture using the open-source NEventStore persistence library.
Used behaviour-driven development to spec business features using SpecFlow.
Awesome Elixir and CQRS Elixir
An awesome list.
A curated list of awesome Elixir, Command Query Responsibility Segregation (CQRS), and event sourcing resources.
Commanded Elixir
Command handling middleware for CQRS application.
Provides support for command registration and dispatch; hosting and delegation to aggregate roots; event handling; and long running process managers.
Use with the eventstore
and eventsourced
projects as components that comprise a CQRS framework for Elixir applications.
Commanded Ecto projections Elixir
Read model projections for Commanded using Ecto.
Read model projections for Commanded CQRS/ES applications using Ecto for persistence.
Commanded audit middleware Elixir
Command auditing middleware for Commanded CQRS/ES applications.
Records every dispatched command to the configured database storage. Includes whether the command was successfully handled, or any error.
EventSourced Elixir
Build functional domain models using event-sourcing.
An Elixir macro to build event-sourced aggregate roots.
EventStore Elixir
CQRS event store using PostgreSQL as the underlying storage engine.
An event store is a type of database optimised for the storage of events.
Event Store supports appending events to a stream, reading events from a single stream, or all streams, and subscribing to events as they are published.
Faker .NET C#
C# port of the Ruby Faker gem.
C# port of the Ruby Faker gem). Used to easily generate fake data: names, addresses, phone numbers, etc.
Available as a NuGet package.
Jekyll lunr.js search Ruby JavaScript
Jekyll + lunr.js = static websites with powerful full-text, client-side search using only JavaScript.
Ledger Node.js JavaScript
Node.js library to access the Ledger command-line interface.
Ledger is a powerful, double-entry accounting system that is accessed from the UNIX command-line.
ledger-cli
allows you to access accounts, balance, and register data from a Ledger .dat
file.
Ledger REST Node.js JavaScript
REST web service to access the Ledger command-line interface.
ledger-rest
allows you to host balance and register data from a Ledger .dat
file as a RESTful web service.
Ledger import Node.js JavaScript
Node.js command-line tool to facilitate data entry into a Ledger file.
Import accounting transactions from a CSV file into Ledger, using naive Bayesian learning to identify accounts from each payee.
Ledger web Node.js JavaScript
Web front-end to graphically view a Ledger data file.
Uses NVD3 and Marionette to plot charts displaying income, expenditure, net worth, and balance from a Ledger .dat
file.
Pipes and filters Node.js JavaScript
Node.js library to divide a larger processing task into a sequence of smaller, independent processing steps (filters) that are connected by channels (pipes).
Each filter exposes a very simple interface: it receives messages on the inbound pipe, processes the message, and publishes the results to the outbound pipe.
The pipe connects one filter to the next, sending output messages from one filter to the next.
RCQRS Ruby
Ruby CQRS and event-sourcing library.
A Ruby implementation of Command-Query Responsibility Segregation (CQRS) with event-sourcing, based upon the ideas of Greg Young.
Uses Active Record from Ruby on Rails for its database persistence.
RCQRS Rails Ruby
Use the RCQRS library in your Rails web app.
Allows the CQRS/ES architecture to be used when building Ruby on Rails web applications.
Strava Elixir
Elixir wrapper for the Strava API.
Access data from the Strava API V3.
Any registered Strava user can obtain an access_token
to use the API by first creating an application.
Treaty TypeScript JavaScript
Rules Engine written in TypeScript implementing the Rete algorithm.
A business rules engine written in TypeScript implementing the Rete algorithm.
Rete is an efficient pattern matching algorithm for implementing production rule systems.