PHPackages                             silvanus/ouroboros-orm - 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. silvanus/ouroboros-orm

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

silvanus/ouroboros-orm
======================

Simple ORM for custom DB tables in WP

v0.6.3(5y ago)151MITPHP

Since Oct 3Pushed 2y ago1 watchersCompare

[ Source](https://github.com/stscoundrel/ouroboros-orm)[ Packagist](https://packagist.org/packages/silvanus/ouroboros-orm)[ RSS](/packages/silvanus-ouroboros-orm/feed)WikiDiscussions master Synced today

READMEChangelog (7)Dependencies (6)Versions (8)Used By (0)

Status
------

[](#status)

Ouroboros was originally written when I still worked more with PHP / WP. The basic functionalities were finished and worked, but never really finalized or tested in a real project.

There is a good chance it all works, so feel free to look around or fork it. Still, be warned: do not use for purposes other than curiosity.

Ouroboros ORM
=============

[](#ouroboros-orm)

Create and use custom WP database tables in ORM-like way. Inspired by tools like Eloquent ORM and Objection.js.

Features
--------

[](#features)

- Schemas: create custom tables for your data.
- Migrations: run your schemas up / down with CLI commands.
- Models: create and use data with model entitites.
- REST API: easily use your Ouroboros data from WP REST endpoints.

Motivation
----------

[](#motivation)

WP database structure is less-than-optimal. When you find yourself creating custom tables in WordPress, you should probably consider using some other platform.

However, we can't always decide what tools we use for a project. The way WordPress supports creating new tables or using data in them is very bare bones. Ouroboros aims to make working with custom tables more streamlined and enjoyable.

Usage
-----

[](#usage)

- See "examples" folder
- See "tests" and "src" to get general idea.

Install
-------

[](#install)

Via Composer:

`composer require silvanus/ouroboros-orm`

To use autoloading mechanism, you must include `vendor/autoload.php` file in your code.

Whats in the name?
------------------

[](#whats-in-the-name)

For those who speak north germanic languages, "orm" means snake or a worm. Therefore I've always associated "ORM" systems with snakes. ["Ouroboros"](https://en.wikipedia.org/wiki/Ouroboros) is a snake biting it's own tail, which is fitting enough description for writing an ORM for WordPress.

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 67.2% 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 ~24 days

Recently: every ~35 days

Total

7

Last Release

1899d ago

### Community

Maintainers

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

---

Top Contributors

[![stscoundrel](https://avatars.githubusercontent.com/u/20028934?v=4)](https://github.com/stscoundrel "stscoundrel (127 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (62 commits)")

---

Tags

composer-packagedatabase-migrationsormphpwordpress

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/silvanus-ouroboros-orm/health.svg)

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

###  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.3k](/packages/illuminate-database)[mongodb/mongodb

MongoDB driver library

1.6k64.0M545](/packages/mongodb-mongodb)[ramsey/uuid-doctrine

Use ramsey/uuid as a Doctrine field type.

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

Reliese Components for Laravel Framework code generation.

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

PHPackages © 2026

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