{"repo":"MAIF/thoth","free":true,"listed":false,"github":"https://github.com/MAIF/thoth","clone":"git clone https://github.com/MAIF/thoth.git","description":"Event sourcing in java with vavr, akka stream and vertx reactive PG driver","language":"Java","stars":37,"topics":["functional-programming","event-sourcing","java","postgresql","akka-streams","kafka"],"license":"Apache-2.0","category":"databases-storage","readme_excerpt":"Event sourcing [![github-action-badge][]][github-action] [![jar-badge][]][jar] [github-action]: https://github.com/MAIF/thoth/actions?query=workflow%3ABuild [github-action-badge]: https://github.com/MAIF/thoth/workflows/Build/badge.svg?branch=master [jar]: https://maven-badges.herokuapp.com/maven-central/fr.maif/thoth-core 2.13 [jar-badge]: https://maven-badges.herokuapp.com/maven-central/fr.maif/thoth-core 2.13/badge.svg This repository provides tools to implement event sourcing in your application. It guaranties that: Events will be written in the database before being published in Kafka Publication in Kafka will be reattempted until it succeeds It provides capabilities of defining two types of projections: \"Transactional\" projections, that are updated in the same transaction as the events \"Eventually consistent\" projections, updated asynchronously by consuming Kafka It also allows storing snapshots of the application state, for scenarios that implies lot of events. These libs are based on : Vavr for functional stuff (immutable List , Either , Future ) Pekko stream for reactive streams jackson for json jooq to build query vertx for reactive postgresql database access Postgresql and kafka are the in production tested data stores Modules commons-event : POJOs that represent the stored events. Can be used by consumers to parse events. thoth-core : APIs for event-sourcing thoth-jooq : A jooq simple implementation of the thoth-core APIs thoth-jooq-async : A jooq implementation o","default_branch":null,"files":null,"tree":[],"storefront":"/r/MAIF","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/MAIF/thoth/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}