You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+21-11Lines changed: 21 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,8 +5,12 @@ It is backing the [Fmodel Reference Guide](https://fraktalio.com/fmodel/).
5
5
6
6
It demonstrates how to run our unique domain and orchestrate it in an EventSourced/EventDriven way.
7
7
8
-
> For State-Stored flavor of the system, please check [https://github.com/fraktalio/fmodel-spring-state-stored-demo](https://github.com/fraktalio/fmodel-spring-state-stored-demo), and notice:
9
-
> - how the `domain` package/model is the same / state-stored system and event-sourced system share the same domain logic
> - how the `domain` package/model is the same / state-stored system and event-sourced system share the same domain
13
+
logic
10
14
> -`application and adapters are different / we only choose to compose and run them differentlly`
11
15
12
16
@@ -28,14 +32,15 @@ This project is using [Fmodel](https://github.com/fraktalio/fmodel) - Kotlin, mu
28
32
- type-safe and
29
33
- thread-safe.
30
34
- enabling illustrating requirements using examples
31
-
- the requirements are presented as scenarios.
32
-
- a scenario is an example of the system’s behavior from the users’ perspective,
35
+
- the requirements are presented as scenarios.
36
+
- a scenario is an example of the system’s behavior from the users’ perspective,
33
37
- and they are specified using the Given-When-Then structure to create a testable/runnable specification
34
-
- Given `< some precondition(s) / events >`
35
-
- When `< an action/trigger occurs / commands>`
36
-
- Then `< some post condition / events >`
38
+
- Given `< some precondition(s) / events >`
39
+
- When `< an action/trigger occurs / commands>`
40
+
- Then `< some post condition / events >`
37
41
38
42
Check the [tests](src/test/kotlin/com/fraktalio/example/fmodelspringdemo/domain/OrderDeciderTest.kt)!
43
+
39
44
```kotlin
40
45
with(orderDecider) {
41
46
givenEvents(listOf(orderCreatedEvent)) { // PRE CONDITIONS
@@ -59,10 +64,10 @@ sourcing and event streaming.
59
64
-`event-streaming` to concurrently coordinate read over a streams of events from multiple consumer instances
60
65
- Support real-time concurrent consumers to project events into view/query models
61
66
62
-
63
67
## Tools
64
68
65
-
-[EventModeling](https://eventmodeling.org/posts/what-is-event-modeling/) - a method of describing systems using an example of how information has changed within them over time.
69
+
-[EventModeling](https://eventmodeling.org/posts/what-is-event-modeling/) - a method of describing systems using an
70
+
example of how information has changed within them over time.
66
71
67
72
## Patterns
68
73
@@ -78,7 +83,11 @@ sourcing and event streaming.
78
83
79
84
-[Fmodel - Domain modeling with Kotlin](https://github.com/fraktalio/fmodel)
- Spring ([Reactive Web](https://docs.spring.io/spring-boot/docs/3.0.4/reference/htmlsingle/#web.reactive),[R2DBC](https://spring.io/guides/gs/accessing-data-r2dbc/), RSocket)
86
+
-
87
+
88
+
Spring ([Reactive Web](https://docs.spring.io/spring-boot/docs/3.0.4/reference/htmlsingle/#web.reactive),[R2DBC](https://spring.io/guides/gs/accessing-data-r2dbc/),
0 commit comments