PHPackages                             mihaisolomon/event-store-client - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Queues &amp; Workers](/categories/queues)
4. /
5. mihaisolomon/event-store-client

ActiveLibrary[Queues &amp; Workers](/categories/queues)

mihaisolomon/event-store-client
===============================

Event Store Client for async TCP connections

v1.0.1(4y ago)0411BSD-3-ClausePHPPHP ^7.2

Since Oct 17Pushed 4y agoCompare

[ Source](https://github.com/mihaisolomon/event-store-client)[ Packagist](https://packagist.org/packages/mihaisolomon/event-store-client)[ RSS](/packages/mihaisolomon-event-store-client/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (15)Versions (21)Used By (0)

Prooph Event Store Client
=========================

[](#prooph-event-store-client)

PHP 7.4 Event Store Client Implementation.

[![Build Status](https://camo.githubusercontent.com/40c684666da874031acaf47aa9d75c0677d41e12cd703699a2b4b5d799fa452f/68747470733a2f2f7472617669732d63692e6f72672f70726f6f70682f6576656e742d73746f72652d636c69656e742e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/prooph/event-store-client)[![Coverage Status](https://camo.githubusercontent.com/7f1e164e96ff0f152719e03df6c89a8b080160f2844a7ddfdb40214f67e50b5d/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f70726f6f70682f6576656e742d73746f72652d636c69656e742f62616467652e7376673f6272616e63683d6d6173746572)](https://coveralls.io/github/prooph/event-store-client?branch=master)[![Gitter](https://camo.githubusercontent.com/abe08b740a4156153736f791393ec4da6619c4be73212e75769f52edacc0e2b5/68747470733a2f2f6261646765732e6769747465722e696d2f4a6f696e253230436861742e737667)](https://gitter.im/prooph/improoph)

Overview
--------

[](#overview)

Prooph Event Store Client supports async non-blocking communication via TCP to [EventStore](https://eventstore.org/).

The `EventStoreConnection` maintains a full-duplex connection between the client and the Event Store server.

### Extensions

[](#extensions)

The `protobuf` extension from Google is recommended, however it is not required.

When this extension is missing, the client will fallback to use `google/protobuf` installable via composer.

The extension [allegro/php-protobuf](https://github.com/allegro/php-protobuf/) is not compatible.

Additional extensions are only needed if your app necessitates a high numbers of concurrent socket connections.

- [ev](https://pecl.php.net/package/ev)
- [event](https://pecl.php.net/package/event)
- [php-uv](https://github.com/bwoebi/php-uv) (experimental fork)

Installation
------------

[](#installation)

### Client

[](#client)

You can install prooph/event-store-client via composer by adding `"prooph/event-store-client": "dev-master"` as requirement to your composer.json.

### Server

[](#server)

Using docker:

```
docker run --name eventstore-node -it -p 2113:2113 -p 1113:1113 eventstore/eventstore
```

Please refer to the documentation of [eventstore.org](https://eventstore.org).

See [server section](https://eventstore.org/docs/server/index.html).

In the docker-folder you'll find three different docker-compose setups (single node, 3-node-cluster and 3-node-dns-cluster).

Quick Start
-----------

[](#quick-start)

For a short overview please see the `examples` folder.

Unit tests
----------

[](#unit-tests)

### Plain PHP

[](#plain-php)

Run the server with memory database

Note: This is the start-script of the Event Store database, not something provided by this library!

```
./run-node.sh --run-projections=all --mem-db
```

You need to ignore the `ignore` group

```
./vendor/bin/phpunit --exclude-group=ignore
```

Those are tests that only work against an empty database and can only be run manually.

Before next run, restart the server. This way you can always start with a clean server.

### Using Docker

[](#using-docker)

See:

Documentation
-------------

[](#documentation)

Documentation is on the [prooph website](http://docs.getprooph.org/).

Support
-------

[](#support)

- Ask questions on Stack Overflow tagged with [\#prooph](https://stackoverflow.com/questions/tagged/prooph).
- File issues at .
- Say hello in the [prooph gitter](https://gitter.im/prooph/improoph) chat.

Contribute
----------

[](#contribute)

Please feel free to fork and extend existing or add new plugins and send a pull request with your changes! To establish a consistent code quality, please provide unit tests for all your changes and may adapt the documentation.

License
-------

[](#license)

Released under the [New BSD License](LICENSE).

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 87.8% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~99 days

Recently: every ~272 days

Total

13

Last Release

1572d ago

PHP version history (2 changes)v1.0.0-beta-1PHP ^7.2

v1.0.0-RC-2PHP ^7.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/2f79869d7c2d3a2116f0270e36e8093d7117da27e297331d4e8f8288ec622c82?d=identicon)[mihaicsolomon](/maintainers/mihaicsolomon)

---

Top Contributors

[![prolic](https://avatars.githubusercontent.com/u/394428?v=4)](https://github.com/prolic "prolic (455 commits)")[![enumag](https://avatars.githubusercontent.com/u/539462?v=4)](https://github.com/enumag "enumag (40 commits)")[![pkruithof](https://avatars.githubusercontent.com/u/330828?v=4)](https://github.com/pkruithof "pkruithof (5 commits)")[![mihaisolomon](https://avatars.githubusercontent.com/u/17908506?v=4)](https://github.com/mihaisolomon "mihaisolomon (4 commits)")[![unixslayer](https://avatars.githubusercontent.com/u/1131246?v=4)](https://github.com/unixslayer "unixslayer (3 commits)")[![Nek-](https://avatars.githubusercontent.com/u/972456?v=4)](https://github.com/Nek- "Nek- (2 commits)")[![gquemener](https://avatars.githubusercontent.com/u/668604?v=4)](https://github.com/gquemener "gquemener (2 commits)")[![SunMar](https://avatars.githubusercontent.com/u/8324268?v=4)](https://github.com/SunMar "SunMar (2 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (1 commits)")[![rodion-k](https://avatars.githubusercontent.com/u/2526460?v=4)](https://github.com/rodion-k "rodion-k (1 commits)")[![simensen](https://avatars.githubusercontent.com/u/191200?v=4)](https://github.com/simensen "simensen (1 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")[![damonjones](https://avatars.githubusercontent.com/u/154075?v=4)](https://github.com/damonjones "damonjones (1 commits)")

---

Tags

asyncampdddproophEventSourcingEventStore

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/mihaisolomon-event-store-client/health.svg)

```
[![Health](https://phpackages.com/badges/mihaisolomon-event-store-client/health.svg)](https://phpackages.com/packages/mihaisolomon-event-store-client)
```

###  Alternatives

[prooph/event-store-client

Event Store Client for async TCP connections

115134.6k2](/packages/prooph-event-store-client)[amphp/parallel

Parallel processing component for Amp.

84746.2M74](/packages/amphp-parallel)[amphp/socket

Non-blocking socket connection / server implementations based on Amp and Revolt.

26439.0M119](/packages/amphp-socket)[amphp/byte-stream

A stream abstraction to make working with non-blocking I/O simple.

392116.2M104](/packages/amphp-byte-stream)[amphp/dns

Async DNS resolution for Amp.

19239.2M41](/packages/amphp-dns)[prooph/event-store-symfony-bundle

109253.5k7](/packages/prooph-event-store-symfony-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
