PHPackages                             pharmanity/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. [Utility &amp; Helpers](/categories/utility)
4. /
5. pharmanity/event-store-client

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

pharmanity/event-store-client
=============================

Event Store Client for async TCP connections

070PHP

Since Nov 2Pushed 2y agoCompare

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

READMEChangelogDependenciesVersions (1)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

16

—

LowBetter than 5% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity20

Early-stage or recently created project

 Bus Factor1

Top contributor holds 87.5% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/51ed49e68295cdd376d73874f149beb94caec3fbfd11bba81bd03ad23cff191e?d=identicon)[polo2ro](/maintainers/polo2ro)

---

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)")[![polo2ro](https://avatars.githubusercontent.com/u/5792736?v=4)](https://github.com/polo2ro "polo2ro (2 commits)")[![Nek-](https://avatars.githubusercontent.com/u/972456?v=4)](https://github.com/Nek- "Nek- (2 commits)")[![SunMar](https://avatars.githubusercontent.com/u/8324268?v=4)](https://github.com/SunMar "SunMar (2 commits)")[![gquemener](https://avatars.githubusercontent.com/u/668604?v=4)](https://github.com/gquemener "gquemener (2 commits)")[![simensen](https://avatars.githubusercontent.com/u/191200?v=4)](https://github.com/simensen "simensen (1 commits)")[![damonjones](https://avatars.githubusercontent.com/u/154075?v=4)](https://github.com/damonjones "damonjones (1 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (1 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")[![rodion-k](https://avatars.githubusercontent.com/u/2526460?v=4)](https://github.com/rodion-k "rodion-k (1 commits)")

### Embed Badge

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

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

###  Alternatives

[flagstudio/nova-actions-left

Laravel Nova actions on the left

2258.2k](/packages/flagstudio-nova-actions-left)[humanmade/popup

An exit intent popup block that shows when someone may be about to leave the site

144.8k](/packages/humanmade-popup)

PHPackages © 2026

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