Skip to content

v2.0.0-alpha.03

Compare
Choose a tag to compare
@idugalic idugalic released this 14 Mar 19:04
· 152 commits to main since this release
ca8df0a

Fmodel provides just enough tactical Domain-Driven Design patterns, optimized for Event Sourcing and CQRS.

v2.0.0 of the library is introducing breaking changes. Check the PR!
Besides keeping the focus on separating data from behavior, we want to split the responsibilities between the domain and application/adapter layers better.
For example, metadata types exist only on the application layer, not leaking into the domain, as these don't benefit core logic. Example: traceId, correlationId, ...

The library will use alpha/pre-release versions until it reach production-ready quality. It will happen soon! We need more tests, better documentation.
To keep it simple, v2.*.* will use the main branch going forward. v1.. will continue to be supported (bugs only, no new features)

The domain components are fully isolated from the application layer and API-related concerns.
It represents a pure declaration (pure functions) of the program logic.
Decider, View, and Saga

The application components orchestrate the execution of the logic by loading the state, executing domain components, and storing a new state.
EventSourcingAggregate, StateStoredAggregate, MaterializedView, and SagaManager

Install

npm i @fraktalio/fmodel-ts

Available on https://www.npmjs.com/package/@fraktalio/fmodel-ts

Learn more

What's Changed

  • Infrastructure interfaces extended to include metadata by @idugalic in #699

Full Changelog: v2.0.0-alpha.02...v2.0.0-alpha.03