event sourcing

hi guys,
is there anyone considering to develop something in order to apply the event-sourcing paradigma to the platform ?
maybe using a specialized db, and for sure forecasting specific info about commands contents and - very important for me - the rules for generating events from commands …
please let me know about this, and also in which way I could help
(sorry for my poor and bad english)

Hi Ferdinando,
The Event Sourcing paradigm is certainly an abstraction of a higher level than provided by the CUBA platform, and you can probably implement it using the platform. The new features of the upcoming platform version 6.3 can help:

  • application components allow you to encapsulate the base functionality to reuse it in multiple projects,
  • additional data stores enable storing of a massive amount of events in separate databases (not necessarily relational)

Hi Konstantin,
thank you very much for your answer, and please excuse me for the delay in answering you …
I think that the event-sourcing should be more internal to the platform than a sort of application solution.
Cuba offers an integrated framework starting from modeling up to generating UI and reports … but the implementation is based on CRUD operations on business entities.
Instead ES (and CQRS) would require a different approach in modeling also commands and events (and the rules for event generation) and hence a corresponding internal implementation IMHO.
thank again, anyway, and God blessing

Hi I’m discovering the CUBA platform. I’m working with CQRS based application too so I’m also interested in cuba+cqrs.

@Ferdinando did you tried to implement some cqrs application using cuba?

There must be some mechanism of handling events in gui, for which IMO the vaadin is capable of using eventbus.

Hi Lukáš
please excuse me for this late answer :frowning:
No, I’ve not dared to implement something in Cuba without support from any expert developer … so I’ve abandoned the idea.
Now I’m trying to work on my own by using a javascript stack (Node.js on the server and Angular2+PrimeNG onthe client) and PostgreSQL as db: it seems to me that Pg does offer useful features as event store - like Custom Aggregates and PL/v8 (to keep js as only application language): I’m thinking that should be possible to build the current state of one or more resource by reading their event history and handle them via a custom aggregate.
Anyway, thanks for your interest and good luck for your project !
have nice days