PHPackages                             pillar/pillar - 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. [Framework](/categories/framework)
4. /
5. pillar/pillar

ActiveLibrary[Framework](/categories/framework)

pillar/pillar
=============

A lightweight DDD and Event Sourcing foundation for PHP applications

v0.7.3(4mo ago)220MITPHPPHP ^8.3|^8.4CI passing

Since Nov 7Pushed 4mo agoCompare

[ Source](https://github.com/edvin/pillar)[ Packagist](https://packagist.org/packages/pillar/pillar)[ Docs](https://github.com/edvin/pillar)[ RSS](/packages/pillar-pillar/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (10)Versions (26)Used By (0)

[![Pillar – PHP Event Sourcing](logo.svg)](logo.svg)

[![CI](https://github.com/edvin/pillar/actions/workflows/ci.yml/badge.svg)](https://github.com/edvin/pillar/actions/workflows/ci.yml)[![Coverage](https://camo.githubusercontent.com/f23b413085c02cf8a38dc9e71b797313d87064bd39a58637ae76c4993d44347c/68747470733a2f2f636f6465636f762e696f2f67682f656476696e2f70696c6c61722f6272616e63682f6d61696e2f67726170682f62616467652e737667)](https://app.codecov.io/gh/edvin/pillar)[![Latest Version](https://camo.githubusercontent.com/e281bb070eece0eaa222ab1f3ca77b796761f8ff29870396f0179f535507a3b0/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f70696c6c61722f70696c6c61722e737667)](https://packagist.org/packages/pillar/pillar)[![Docs](https://camo.githubusercontent.com/bab693cd54545ba3568d5ccb30c6f768bd229630cd5ab39c505ad8a0d74eee6e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f646f63732d5669746550726573732d696e666f726d6174696f6e616c)](https://edvin.github.io/pillar/)

Elegant DDD &amp; Event Sourcing for Laravel
--------------------------------------------

[](#elegant-ddd--event-sourcing-for-laravel)

Build rich domain models and event‑sourced systems — without friction.

[![Read the Docs](https://camo.githubusercontent.com/f446e9cf285abc4c62e26e600cc4debc307b1b577b38168a3b254d087fff50f9/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f52656164253230746865253230446f63732d6874747073253341253246253246646f63732e70696c6c61727068702e6465762d3235363365623f7374796c653d666f722d7468652d6261646765)](https://docs.pillarphp.dev)

Install
-------

[](#install)

```
composer require pillar/pillar
php artisan pillar:install
```

Highlights
----------

[](#highlights)

- 🧠 **Aggregate sessions (Unit of Work)** — `find()`, mutate, `commit()`
- 🗃️ **Pluggable event store** with **generator‑based** streams &amp; optimistic locking
- 🧵 **Fetch strategies** (load‑all / chunked / streaming)
- 🧬 **Versioned events** &amp; **upcasters**
- 💾 **Snapshotting** policies (Always / Cadence / On‑Demand)
- 🧩 **Object serialization** — JSON by default, MessagePack built-in, or custom serializer
- 🔒 **Payload encryption** — pluggable cipher, per‑event overrides
- 🖥️ **Event stream browser Web UI** — browse streams and timelines and inspect payloads
- ⏱️ **Point‑in‑time reads** — load up to aggregate/global sequence or date via `EventWindow`
- 🎭 **Aliases** for readable event names
- 🔁 **Safe replays** to rebuild projections
- ⚡ **CQRS** — projectors and query bus for a fast, scalable read side
- 🧰 **Facade + buses** for quick wiring
- 🛠️ **Pillar Make**: Bounded Context/Command/Query/Event Scaffolding
- 🧪 **First‑class testing** — Given/When/Then helpers for aggregates &amp; commands, full isolation, exception capture, state inspection
- 🧵 **Command &amp; Aggregate Scenarios** — end‑to‑end command testing using the real bus &amp; event store, or fast in‑memory aggregate testing
- 🧰 **Laravel Tinker integration** — automatic aliases for commands, queries &amp; IDs, plus rich aggregate debugging

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

[](#documentation)

Full docs at ****
— Getting started, concepts, tutorial, configuration &amp; CLI reference.

License
-------

[](#license)

MIT © Edvin Syse

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance74

Regular maintenance activity

Popularity9

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~2 days

Total

25

Last Release

147d ago

PHP version history (2 changes)v0.1.0PHP ^8.4

v0.4.4PHP ^8.3|^8.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/8988b23bd1026647d0e07ea7e86f19bbeb6ea0a54e05098250a5da06121ed2aa?d=identicon)[edvin](/maintainers/edvin)

---

Top Contributors

[![edvin](https://avatars.githubusercontent.com/u/977035?v=4)](https://github.com/edvin "edvin (7 commits)")

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/pillar-pillar/health.svg)

```
[![Health](https://phpackages.com/badges/pillar-pillar/health.svg)](https://phpackages.com/packages/pillar-pillar)
```

###  Alternatives

[laravel/passport

Laravel Passport provides OAuth2 server support to Laravel.

3.4k85.0M532](/packages/laravel-passport)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k12.1M99](/packages/laravel-pulse)[laravel/pennant

A simple, lightweight library for managing feature flags.

57711.1M53](/packages/laravel-pennant)[laravel/cashier

Laravel Cashier provides an expressive, fluent interface to Stripe's subscription billing services.

2.5k25.9M107](/packages/laravel-cashier)[laravel/scout

Laravel Scout provides a driver based solution to searching your Eloquent models.

1.7k49.4M479](/packages/laravel-scout)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)

PHPackages © 2026

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