PHPackages                             thybag/pseudo-model - 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. [Database &amp; ORM](/categories/database)
4. /
5. thybag/pseudo-model

ActiveLibrary[Database &amp; ORM](/categories/database)

thybag/pseudo-model
===================

PseudoModel is an eloquent like model base for backing on to custom data structures.

0.3.0(11mo ago)227.9k—5.1%2[1 issues](https://github.com/thybag/PseudoModel/issues)MITPHP

Since Oct 28Pushed 11mo ago3 watchersCompare

[ Source](https://github.com/thybag/PseudoModel)[ Packagist](https://packagist.org/packages/thybag/pseudo-model)[ RSS](/packages/thybag-pseudo-model/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (3)Dependencies (4)Versions (5)Used By (0)

PseudoModel
===========

[](#pseudomodel)

PseudoModel is an eloquent-like base model for laravel, aiming to mirror the majority of the laravels basic model functionality.

Using PseudoModel you can represent and interact with none-database based data in much the same way you would any normal Model, hopefully simplifying the code you need the write. In the past I've used this approach for mapping on to LDAP as well as 3rd party API's.

In order to provide the standard eloquent eventing behaviors, you can use the `persist` method to define your save logic. The method will change depending on whether the change is create, update or delete.

```
    /**
     * Persist model changes. Called on save & delete.
     *
     * @param  string $action  create|update|delete
     * @param  array  $options
     * @return boolean true|false
     */
    protected function persist($action, array $options = []): bool
    {
        return true;
    }

```

This library is still in progress so not yet recommended for use in production.

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance40

Moderate activity, may be stable

Popularity31

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~472 days

Total

3

Last Release

353d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e22d6c955042e97d5c5a68cc21b540dc6aa3fdb7f830d56274e51dbb6c10d13e?d=identicon)[bag](/maintainers/bag)

---

Top Contributors

[![thybag](https://avatars.githubusercontent.com/u/887397?v=4)](https://github.com/thybag "thybag (3 commits)")[![vroomfondle](https://avatars.githubusercontent.com/u/6186584?v=4)](https://github.com/vroomfondle "vroomfondle (3 commits)")[![Xulai](https://avatars.githubusercontent.com/u/5481226?v=4)](https://github.com/Xulai "Xulai (2 commits)")

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/thybag-pseudo-model/health.svg)

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

###  Alternatives

[doctrine/orm

Object-Relational-Mapper for PHP

10.2k285.3M6.2k](/packages/doctrine-orm)[jdorn/sql-formatter

a PHP SQL highlighting library

3.9k115.1M102](/packages/jdorn-sql-formatter)[illuminate/database

The Illuminate Database package.

2.8k52.4M9.4k](/packages/illuminate-database)[ramsey/uuid-doctrine

Use ramsey/uuid as a Doctrine field type.

90440.3M211](/packages/ramsey-uuid-doctrine)[reliese/laravel

Reliese Components for Laravel Framework code generation.

1.7k3.4M16](/packages/reliese-laravel)[wildside/userstamps

Laravel Userstamps provides an Eloquent trait which automatically maintains `created\_by` and `updated\_by` columns on your model, populated by the currently authenticated user in your application.

7511.7M13](/packages/wildside-userstamps)

PHPackages © 2026

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