PHPackages                             level51/silverstripe-data-documents - 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. level51/silverstripe-data-documents

ActiveSilverstripe-vendormodule[Utility &amp; Helpers](/categories/utility)

level51/silverstripe-data-documents
===================================

A CQRS-style approach for managing data redundancy "the good way"

0.2.0(1y ago)1512BSD-3-ClausePHP

Since Sep 18Pushed 1y ago1 watchersCompare

[ Source](https://github.com/Level51/silverstripe-data-documents)[ Packagist](https://packagist.org/packages/level51/silverstripe-data-documents)[ RSS](/packages/level51-silverstripe-data-documents/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (3)Versions (3)Used By (2)

Data Documents
==============

[](#data-documents)

Low-effort approach for syncing your DataObject with document-based payload stores such Firestore, Pocketbase, Elasticsearch, Redis, ...

Inspired by the CQRS pattern, you can think of this module as a headless approach without any public API exposed by your Silverstripe app.

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

[](#installation)

Make sure to require the base module...

```
composer require level51/silverstripe-data-documents

```

...and the payload store adapter of your choice.

- [**Firestore**](https://github.com/Level51/silverstripe-data-documents-firestore): `composer require level51/silverstripe-data-documents-firestore`
- [**Pocketbase**](https://github.com/Level51/silverstripe-data-documents-pocketbase): `composer require level51/silverstripe-data-documents-pocketbase`
- (adapter library in the making)

It is faily easy to create your own adapter. Just create a class and make it implement the `DataDocumentStore` interface.

Recipe
------

[](#recipe)

1. Install or create a document store adapter
2. Make your DataObject implement the `DataDocument` interface
3. Start manipulating your DataObject and check your document store

What is CQRS?
-------------

[](#what-is-cqrs)

CQRS is an architectural pattern that separates the concerns of reading (query) and writing (command) operations in your application. This separation provides several benefits, including improved performance, code organization, and maintainability.

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance43

Moderate activity, may be stable

Popularity10

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity34

Early-stage or recently created project

 Bus Factor1

Top contributor holds 63.6% 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 ~525 days

Total

2

Last Release

447d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/441f0e8f95c17048417a33f37e35d5ffdd4c07902cbedaf7f5786f4b7c454284?d=identicon)[JZubero](/maintainers/JZubero)

---

Top Contributors

[![JZubero](https://avatars.githubusercontent.com/u/13751426?v=4)](https://github.com/JZubero "JZubero (7 commits)")[![dkliemsch](https://avatars.githubusercontent.com/u/13777159?v=4)](https://github.com/dkliemsch "dkliemsch (4 commits)")

---

Tags

silverstripecms

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/level51-silverstripe-data-documents/health.svg)

```
[![Health](https://phpackages.com/badges/level51-silverstripe-data-documents/health.svg)](https://phpackages.com/packages/level51-silverstripe-data-documents)
```

PHPackages © 2026

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