mr-luke/framekit

Event Sourcing package
4,995 2
Install
composer require mr-luke/framekit
Latest Version:2.0.0-rc.3
PHP:^8.1
Last Updated:Dec 9, 2024
Links: GitHub  ·  Packagist
Maintainer: mr-luke

Framekit

Latest Stable Version Total Downloads License

Tests Workflow Quality Gate Status Security Rating Reliability Rating

Getting Started

Framekit is Laravel package built to speed up DDD modeling with EventSourcing. It implements CQRS architecture. This version will be replaced by 2.0.0 where some concepts will be re-written.

Installation

To install through composer, simply put the following in your composer.json file and run composer update

{
    "require": {
        "mr-luke/framekit": "~1.0"
    }
}

Or use the following command

composer require "mr-luke/framekit"

Configuration

To use Framekit we need to set up some env variables. To see all of them just run command:

php artisan vendor:publish

Base Components

\Framekit\AggregateRoot

It's main build up component. Due to DDD building blocks it's our root or Model tree. The heart of an aggregate is our Entity model.

\Framekit\State

This is our Entity abstract, we call it State.

\Framekit\Event

Every Aggregate uses Events as state flow control blocks.

\Framekit\Projection

Since we work with CQRS, it's an instruction how to decompose our model to Query side model.

\Framekit\Retrospection

EventSourcing gives us an ability to walk along the stream to make a retrospection of Events.

There are many more elements to explore...

Related Packages

ecotone/laravel

Ecotone for Laravel — CQRS, Event Sourcing, Sagas, Durable Workflows, and Outbox...

340,624 21
patchlevel/laravel-event-sourcing

laravel package for patchlevel/event-sourcing

6,608 8
hirethunk/verbs

An event sourcing package that feels nice.

269,731 518
smartness/traceflow-laravel

Production-ready distributed tracing SDK for Laravel with event-sourced architec...

2,725 0
php-tmdb/laravel

Laravel Package for TMDB ( The Movie Database ) API. Provides easy access to the...

53,315 160