From 82a9c6fe0b9ecd92476ba21f092dd63c3f06391d Mon Sep 17 00:00:00 2001 From: Ivan Dugalic Date: Thu, 27 Jun 2024 15:13:45 +0200 Subject: [PATCH] README updated --- README.md | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 03ebf38..ed17c06 100644 --- a/README.md +++ b/README.md @@ -23,9 +23,24 @@ in time and review the state at any given moment. This project is using: - [`rust` programming language](https://www.rust-lang.org/) to build a high-performance, reliable, and efficient system. -- [fmodel-rust library](https://github.com/fraktalio/fmodel-rust) to implement tactical Domain-Driven Design patterns, optimised for Event Sourcing. +- [`f{model}` rust library](https://github.com/fraktalio/fmodel-rust) to implement tactical Domain-Driven Design patterns, optimised for Event Sourcing. - [pgrx](https://github.com/pgcentralfoundation/pgrx) to simplify the creation of custom Postgres extensions and bring `logic` closer to your data(base). +## f{model} + +[`f{model}`](https://github.com/fraktalio/fmodel-rust/blob/main/README.md) library provides just enough tactical Domain-Driven Design patterns, optimised for Event Sourcing and CQRS. + +- algebraic data types form the structure of our data (commands, state, and events). +- functions/lambda offers the algebra of manipulating the data in a compositional manner, effectively modeling the behavior. + +- This leads to modularity in design and a clear separation of the data’s structure and functions/behaviour of the data/entity. + +`f{model}` library offers generic and abstract components to specialize in for your specific case/expected behavior. + +[Read more](https://github.com/fraktalio/fmodel-rust/blob/main/README.md) + + + ## Requirements - [Rust](https://www.rust-lang.org/tools/install) - [PGRX subcommand](https://github.com/pgcentralfoundation/pgrx?tab=readme-ov-file#getting-started): `cargo install --locked cargo-pgrx`