All Projects → yasiekz → payments-DDD-ES-tutorial

yasiekz / payments-DDD-ES-tutorial

Licence: MIT license
This is tutorial project to learn how to connect Symfony4 and docker compose with Domain Driven Design and Event Sourcing

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to payments-DDD-ES-tutorial

micro
Functional prooph for microservices
Stars: ✭ 53 (+130.43%)
Mutual labels:  cqrs, event-sourcing
flighthub
Flight ticket booking system implemented with CQRS and ES.
Stars: ✭ 26 (+13.04%)
Mutual labels:  cqrs, event-sourcing
akka-persistence-gcp-datastore
akka-persistence-gcp-datastore is a journal and snapshot store plugin for akka-persistence using google cloud firestore in datastore mode.
Stars: ✭ 18 (-21.74%)
Mutual labels:  cqrs, event-sourcing
awesome-talks
Awesome talks about event sourcing, cqrs, microservices, funcional programming ...
Stars: ✭ 23 (+0%)
Mutual labels:  cqrs, event-sourcing
incubator-eventmesh
EventMesh is a dynamic event-driven application runtime used to decouple the application and backend middleware layer, which supports a wide range of use cases that encompass complex multi-cloud, widely distributed topologies using diverse technology stacks.
Stars: ✭ 939 (+3982.61%)
Mutual labels:  cqrs, event-sourcing
food-ordering-demo
Demo application focusing on the Food Ordering domain - Used in our video series
Stars: ✭ 28 (+21.74%)
Mutual labels:  cqrs, event-sourcing
eventuous
Minimalistic Event Sourcing library for .NET
Stars: ✭ 236 (+926.09%)
Mutual labels:  cqrs, event-sourcing
node-event-storage
An optimized event store for node.js
Stars: ✭ 29 (+26.09%)
Mutual labels:  cqrs, event-sourcing
commander
Build event-driven and event streaming applications with ease
Stars: ✭ 60 (+160.87%)
Mutual labels:  cqrs, event-sourcing
fmodel-ts
Functional Domain Modeling with Typescript
Stars: ✭ 41 (+78.26%)
Mutual labels:  cqrs, event-sourcing
assembler
Functional, type-safe, stateless reactive Java API for efficient implementation of the API Composition Pattern for querying/merging data from multiple datasources/services, with a specific focus on solving the N + 1 query problem
Stars: ✭ 102 (+343.48%)
Mutual labels:  cqrs, event-sourcing
VehicleTracker
Vehicle Tracker with Microservice example
Stars: ✭ 70 (+204.35%)
Mutual labels:  cqrs, event-sourcing
node-cqrs-saga
Node-cqrs-saga is a node.js module that helps to implement the sagas in cqrs. It can be very useful as domain component if you work with (d)ddd, cqrs, eventdenormalizer, host, etc.
Stars: ✭ 59 (+156.52%)
Mutual labels:  cqrs, event-sourcing
typescript-ddd-example
🔷🎯 TypeScript DDD Example: Complete project applying Hexagonal Architecture and Domain-Driven Design patterns
Stars: ✭ 607 (+2539.13%)
Mutual labels:  cqrs, ddd-sample
e-shop
Sample Spring Cloud microservices e-shop.
Stars: ✭ 48 (+108.7%)
Mutual labels:  cqrs, event-sourcing
eda-tutorial
Event-Driven Tutorial for Distributed Data with CQRS and Event Sourcing
Stars: ✭ 49 (+113.04%)
Mutual labels:  cqrs, event-sourcing
ddes
JS/TypeScript framework for Distributed Event Sourcing & CQRS
Stars: ✭ 28 (+21.74%)
Mutual labels:  cqrs, event-sourcing
financial
POC de uma aplicação de domínio financeiro.
Stars: ✭ 62 (+169.57%)
Mutual labels:  cqrs, event-sourcing
firebase-event-sourcing
Event Sourcing + CQRS + DDD for Firebase
Stars: ✭ 14 (-39.13%)
Mutual labels:  cqrs, event-sourcing
stem
Event sourcing framework based on ZIO and pluggable runtime (currently working with Akka cluster)
Stars: ✭ 22 (-4.35%)
Mutual labels:  cqrs, event-sourcing

Build Status codecov

DDD + CQRS + ES + Symfony 4 based API + docker + Codeception

This is tutorial project to learn how to connect Symfony4 and docker compose with Domain Driven Design and Event Sourcing

Project resolves real problem with bank accounts and payments. Under development

Event Souring is based on two most popular PHP libraries:

Key features:

  • fully dockerized project
  • payments and account balance build from events
  • around 90% code coverage with phpunit unit and functional tests
  • event store on mongoDB, fully separated from domain
  • travis automated tests
  • Data fixtures

Scheduled functionality

  • Load domain objects from snapshots
  • REST API calls with CQRS
  • API tests with Codeception

Local run

You need docker and docker-compose installed on your system. After cloning repo just run:

docker-compose up -d
docker exec -it payments-ddd-es-tutorial-php composer install

If you want to run your app with some predefined objects from fixtures just run:

docker exec -it payments-ddd-es-tutorial-php php bin/console doctrine:mongodb:fixtures:load

Then on localhost:8080 will be your site.

Run automated tests

docker-compose -f docker-compose.test.yml up -d
docker exec -it payments-ddd-es-tutorial-php-test vendor/bin/phpunit -c phpunit.xml.dist
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].