Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/patchlevel/event-sourcing
An event sourcing library, complete with all the essential features, powered by the reliable Doctrine ecosystem and focused on developer experience.
https://github.com/patchlevel/event-sourcing
dbal doctrine domain-driven-design event-sourcing php
Last synced: 3 days ago
JSON representation
An event sourcing library, complete with all the essential features, powered by the reliable Doctrine ecosystem and focused on developer experience.
- Host: GitHub
- URL: https://github.com/patchlevel/event-sourcing
- Owner: patchlevel
- License: mit
- Created: 2020-11-19T18:37:37.000Z (about 4 years ago)
- Default Branch: 3.6.x
- Last Pushed: 2024-10-30T04:00:48.000Z (about 2 months ago)
- Last Synced: 2024-10-30T07:12:41.400Z (about 2 months ago)
- Topics: dbal, doctrine, domain-driven-design, event-sourcing, php
- Language: PHP
- Homepage: https://event-sourcing.patchlevel.io
- Size: 4.44 MB
- Stars: 137
- Watchers: 7
- Forks: 5
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Mutation testing badge](https://img.shields.io/endpoint?style=flat&url=https%3A%2F%2Fbadge-api.stryker-mutator.io%2Fgithub.com%2Fpatchlevel%2Fevent-sourcing%2F3.0.x)](https://dashboard.stryker-mutator.io/reports/github.com/patchlevel/event-sourcing/3.0.x)
[![Type Coverage](https://shepherd.dev/github/patchlevel/event-sourcing/coverage.svg)](https://shepherd.dev/github/patchlevel/event-sourcing)
[![Latest Stable Version](https://poser.pugx.org/patchlevel/event-sourcing/v)](//packagist.org/packages/patchlevel/event-sourcing)
[![License](https://poser.pugx.org/patchlevel/event-sourcing/license)](//packagist.org/packages/patchlevel/event-sourcing)# Event-Sourcing
An event sourcing library, complete with all the essential features,
powered by the reliable Doctrine ecosystem and focused on developer experience.## Features
* Everything is included in the package for event sourcing
* Based on [doctrine dbal](https://github.com/doctrine/dbal) and their ecosystem
* Developer experience oriented and fully typed
* Automatic [snapshot](https://patchlevel.github.io/event-sourcing-docs/latest/snapshots/)-system to boost your
performance
* [Split](https://patchlevel.github.io/event-sourcing-docs/latest/split_stream/) big aggregates into multiple streams
* Versioned and managed lifecycle
of [subscriptions](https://patchlevel.github.io/event-sourcing-docs/latest/subscription/) like projections and
processors
* Safe usage of [Personal Data](https://patchlevel.github.io/event-sourcing-docs/latest/personal_data/) with
crypto-shredding
* Smooth [upcasting](https://patchlevel.github.io/event-sourcing-docs/latest/upcasting/) of old events
* Simple setup with [scheme management](https://patchlevel.github.io/event-sourcing-docs/latest/store/)
and [doctrine migration](https://patchlevel.github.io/event-sourcing-docs/latest/store/)
* Built in [cli commands](https://patchlevel.github.io/event-sourcing-docs/latest/cli/)
with [symfony](https://symfony.com/)
* and much more...## Installation
```bash
composer require patchlevel/event-sourcing
```## Documentation
* Latest [Docs](https://event-sourcing.patchlevel.io/latest/getting_started/)
* Related [Blog](https://patchlevel.de/blog)## Integration
* [Symfony](https://github.com/patchlevel/event-sourcing-bundle)
* [Psalm](https://github.com/patchlevel/event-sourcing-psalm-plugin)## Supported databases
We officially only support the databases and versions listed in the table, as these are tested in the CI.
Since the package is based on doctrine dbal, other databases such as OracleDB and MSSQL may also work.
But we can only really support the databases if we can also automatically ensure that they don't break due to changes.> [!TIP]
> We recommend using PostgreSQL.| Database | Version |
|------------|---------------------------------------|
| PostgreSQL | 12.20, 13.16, 14.13, 15.8, 16.4, 17.0 |
| MariaDB | 10.5, 10.6, 10.11, 11.1, 11.4 |
| MySQL | 5.7, 8.0, 8.4, 9.0 |
| SQLite | 3.x |## Sponsors
[](https://www.blackfire.io)