bulletproof-ninja / delta

Licence: MIT License
DDD-centric event-sourcing library for the JVM

Programming Languages

scala
5932 projects
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to delta

Event Sourcing Jambo
An Hexagonal Architecture with DDD + Aggregates + Event Sourcing using .NET Core, Kafka e MongoDB (Blog Engine)
Stars: ✭ 159 (+960%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, cqrs-es
Eventflow.example
DDD+CQRS+Event-sourcing examples using EventFlow following CQRS-ES architecture. It is configured with RabbitMQ, MongoDB(Snapshot store), PostgreSQL(Read store), EventStore(GES). It's targeted to .Net Core 2.2 and include docker compose file.
Stars: ✭ 131 (+773.33%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, eventsourcing
Revo
Event Sourcing, CQRS and DDD framework for C#/.NET Core.
Stars: ✭ 162 (+980%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, eventsourcing
Eventflow
Async/await first CQRS+ES and DDD framework for .NET
Stars: ✭ 1,932 (+12780%)
Mutual labels:  cqrs, ddd, domain-driven-design, eventsourcing, cqrs-es
Eventhorizon
CQRS/ES toolkit for Go
Stars: ✭ 961 (+6306.67%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, eventsourcing
Goes
Go Event Sourcing made easy
Stars: ✭ 144 (+860%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, eventsourcing
Todomvc Ddd Cqrs Eventsourcing
Implementation of basic Todo app via tastejs/todomvc in C#/Typescript with eventsourcing, cqrs, and domain driven design
Stars: ✭ 134 (+793.33%)
Mutual labels:  cqrs, ddd, domain-driven-design, eventsourcing, cqrs-es
Event Sourcing Cqrs Examples
Event Sourcing and CQRS in practice.
Stars: ✭ 265 (+1666.67%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, cqrs-es
Rails event store
A Ruby implementation of an Event Store based on Active Record
Stars: ✭ 947 (+6213.33%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, cqrs-es
Eventsourcing
A library for event sourcing in Python.
Stars: ✭ 760 (+4966.67%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, eventsourcing
Eshoponcontainersddd
Fork of dotnet-architecture/eShopOnContainers in full DDD/CQRS design using my own patterns
Stars: ✭ 126 (+740%)
Mutual labels:  cqrs, ddd, domain-driven-design, eventsourcing, cqrs-es
Bifrost
This is the stable release of Dolittle till its out of alpha->beta stages
Stars: ✭ 111 (+640%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, eventsourcing
eventuous
Minimalistic Event Sourcing library for .NET
Stars: ✭ 236 (+1473.33%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing, eventsourcing
micro
Functional prooph for microservices
Stars: ✭ 53 (+253.33%)
Mutual labels:  cqrs, ddd, event-sourcing, eventsourcing
Kreta
Modern project management solution
Stars: ✭ 177 (+1080%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing
Dotnet New Caju
Learn Clean Architecture with .NET Core 3.0 🔥
Stars: ✭ 228 (+1420%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing
Aecor
Pure functional event sourcing runtime
Stars: ✭ 299 (+1893.33%)
Mutual labels:  reactive, cqrs, distributed, eventsourcing
Messagebus
A MessageBus (CommandBus, EventBus and QueryBus) implementation in PHP7
Stars: ✭ 178 (+1086.67%)
Mutual labels:  cqrs, ddd, domain-driven-design, event-sourcing
Resolve
Full stack CQRS, DDD, Event Sourcing framework for Node.js
Stars: ✭ 460 (+2966.67%)
Mutual labels:  reactive, cqrs, ddd, event-sourcing
fee-office
A DDD, CQRS, ES demo application
Stars: ✭ 35 (+133.33%)
Mutual labels:  cqrs, domain-driven-design, event-sourcing, cqrs-es

Scala version Scala version

Download Join Chat at https://gitter.im/bulletproof-ninja/delta

Delta Build Status

Delta

DDD-centric event-sourcing library for the JVM.


What's in a name?

del·ta

/ˈdeltə/

symbol symbol: δ; symbol: Δ; symbol: delta 1. MATHEMATICS variation of a variable or function. 2. MATHEMATICS a finite increment.

- or -

Delta encoding

Delta encoding is a way of storing or transmitting data in the form of differences (deltas) between sequential data


Design principles

  • Non-blocking code, Future based API.
  • Pluggable architecture. Storage and messaging are implementation neutral. With multiple supported implementations, it's easier to use with existing infrastructure. Current implementations:
    • Storage:
      • Generic JDBC, with MySQL, and PostgreSQL adaptations. Custom adaptions are straightforward.
      • MongoDB
      • Cassandra
    • Messaging:
      • Redis Pub/Sub
      • Hazelcast Topic
  • No third-party dependencies (except for storage/messaging implementations)
  • Minimally invasive. Large degree of freedom in implementation. Uses type classes instead of inheritance. No annotation hell.
  • Fast, scalable. Written for very large data sets; supports both horizontal and vertical scaling.
  • Customizable. Attempts to provide sane defaults, but enables high degree of customization.

Why event-sourcing?

  • Complete data history. Intrinsically complete and correct audit trail of any and all changes.
  • Very fast. Append-only writes. Prebuilt reads (push and pull).
  • Scalable; effortless sharding.
  • No object-relational mismatch.
  • No RDBMS schema upgrades.
  • Fully separate OLTP/OLAP.
  • Easy and flexible authentication. Any and all updates are done through explicit, use case specific, commands, each of which can have custom authentication, if required.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].