zetacomponents/persistent-object
PersistentObject is a lightweight data persistence framework for PHP that maps objects to database tables. It provides CRUD operations, a fluent query API, and support for one-to-many and many-to-many relations, letting you work with rows as plain objects while it handles SQL generation.
PersistentObject subclasses and declarative object definitions are already load-bearing. Here the package supports a roadmap decision — contain, freeze, and extract versus rewrite — and informs sequencing of a migration off PHP 5-era persistence.composer require.NOASSERTION, meaning automated detection could not confirm terms. For a PM, that alone blocks inclusion in anything distributed or commercially sensitive until legal clears it — treat as a decision checkpoint, not a footnote.Consider it only when:
Look elsewhere when:
NOASSERTION is a hard stop until cleared; do not let it into a distributed product on the assumption it is permissive.To executives: This is a discontinued persistence library with effectively no users left — a handful of stars, nothing depending on it. It is not a candidate for investment. If it appears in our codebase, it is a migration risk with a bounded blast radius, and the right ask is a scoped extraction budget, not an integration one. There is also an unresolved licensing flag that legal should clear before we ship anything containing it.
To engineering: Do not add this to a Laravel service — Eloquent covers the same ground with active maintenance, tooling, and hiring. If it is already present, contain it: put it behind a repository interface, pin the version, add characterization tests around the existing persistence behavior, and plan replacement incrementally. The declarative object-definition approach is worth skimming as a reference for our own schema conventions, but nothing more.
How can I help you explore Laravel packages today?