PHPackages                             codesleeve/holloway - 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. codesleeve/holloway

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

codesleeve/holloway
===================

Holloway: A datamapper built on top of the Illuminate Database package.

v0.1.0-alpha.1(7mo ago)37.5k↓43.8%2[1 PRs](https://github.com/CodeSleeve/holloway/pulls)MITPHPPHP ^8.1CI failing

Since Oct 12Pushed 3mo ago1 watchersCompare

[ Source](https://github.com/CodeSleeve/holloway)[ Packagist](https://packagist.org/packages/codesleeve/holloway)[ RSS](/packages/codesleeve-holloway/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (9)Versions (4)Used By (0)

Holloway
========

[](#holloway)

 [![A Holloway in nature](./annie-spratt-holloway-unsplash-small.jpg)](./annie-spratt-holloway-unsplash-small.jpg)

[![Tests](https://github.com/CodeSleeve/holloway/workflows/tests/badge.svg)](https://github.com/CodeSleeve/holloway/actions)[![Latest Version on Packagist](https://camo.githubusercontent.com/ef556835855054c53f1fcec891afa65e6f66684c79e2475ef9a999aff774698a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f636f6465736c656576652f686f6c6c6f7761792e737667)](https://packagist.org/packages/codesleeve/holloway)[![PHP Version](https://camo.githubusercontent.com/5b9bc5e686b554f74b1b9b22f359a5dd10a5cd13a99657d34137876e0ec7396c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f636f6465736c656576652f686f6c6c6f7761792e737667)](https://packagist.org/packages/codesleeve/holloway)[![Total Downloads](https://camo.githubusercontent.com/93fda7b2d5584c95f988b07458ec7315d602256778cdf72f0cdb98762043717c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f636f6465736c656576652f686f6c6c6f7761792e737667)](https://packagist.org/packages/codesleeve/holloway)[![License](https://camo.githubusercontent.com/52da13bb02cd4440d73df8aa487205f88b4d3d0bec6625cec5215d45c08757bb/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f436f6465536c656576652f686f6c6c6f7761792e737667)](https://github.com/CodeSleeve/holloway/blob/master/LICENSE.txt)

Holloway is an ORM toolkit for Laravel that let's you create your own custom datamappers on top of Laravel's `illuminate/database` package. It offers you the query builder you know and love, but at the same time gives you complete control over how your ORM records (Entities) are mapped to and from your database. You can create unbreakable domain models (Entities that are never allowed to exist in an invalid state), with complete control over their construction and behavior throughout the entire application request lifecycle.

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

[](#documentation)

### Core Concepts

[](#core-concepts)

- [Getting Started](./docs/getting-started.md) - Installation, basic setup, and your first mapper
- [Architecture Overview](./docs/architecture.md) - Understanding the datamapper pattern
- [Entity Patterns](./docs/entity-patterns.md) - Choose the pattern that fits your PHP version
- [Entity Hydration](./docs/core-concepts/entity-hydration.md) - How entities are loaded from the database
- [Type Transformations](./docs/core-concepts/type-transformations.md) - Automatic value object conversion
- [Value Objects](./docs/core-concepts/value-objects.md) - Rich domain types like Money and Email

### Mappers &amp; Querying

[](#mappers--querying)

- [Creating Mappers](./docs/mappers/creating-mappers.md) - Mapper basics and configuration
- [Query Building](./docs/mappers/query-building.md) - Filtering and retrieving entities
- [Persistence Operations](./docs/mappers/persistence.md) - Storing, updating, and deleting
- [Scopes](./docs/mappers/scopes.md) - Reusable query logic

### Relationships

[](#relationships)

- [Relationship Overview](./docs/relationships/overview.md) - Understanding relationships
- [Standard Relationships](./docs/relationships/standard.md) - HasOne, HasMany, BelongsTo, BelongsToMany
- [Custom Relationships](./docs/relationships/custom.md) - Flexible relationship patterns
- [Eager Loading](./docs/relationships/eager-loading.md) - Optimize relationship queries

### Advanced Topics

[](#advanced-topics)

- [Entity Caching](./docs/advanced/caching.md) - Performance optimization
- [Soft Deletes](./docs/advanced/soft-deletes.md) - Soft deletion support
- [Events &amp; Hooks](./docs/advanced/events.md) - Lifecycle events
- [Factories &amp; Testing](./docs/advanced/factories.md) - Test data creation

Contributing
------------

[](#contributing)

Thank you for your interest in improving Holloway! We're currently not accepting PRs at the moment. If you find a bug or have a proposal, please open an issue.

License
-------

[](#license)

Holloway is open-sourced software licensed under the [MIT license](./LICENSE).

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance72

Regular maintenance activity

Popularity29

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity32

Early-stage or recently created project

 Bus Factor1

Top contributor holds 94.4% 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

Unknown

Total

1

Last Release

218d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/81d6684b2f8a8196018954013fc1e15933c1263c07036eba80674e278441a8c9?d=identicon)[tandrewbennett](/maintainers/tandrewbennett)

---

Top Contributors

[![tabennett](https://avatars.githubusercontent.com/u/2191397?v=4)](https://github.com/tabennett "tabennett (119 commits)")[![kdocki](https://avatars.githubusercontent.com/u/772706?v=4)](https://github.com/kdocki "kdocki (4 commits)")[![Megawolf](https://avatars.githubusercontent.com/u/4590572?v=4)](https://github.com/Megawolf "Megawolf (2 commits)")[![markpruett571](https://avatars.githubusercontent.com/u/60859470?v=4)](https://github.com/markpruett571 "markpruett571 (1 commits)")

---

Tags

laraveldatabaseilluminatedatamapper

###  Code Quality

TestsPHPUnit

### Embed Badge

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

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

###  Alternatives

[mongodb/laravel-mongodb

A MongoDB based Eloquent model and Query builder for Laravel

7.1k7.2M71](/packages/mongodb-laravel-mongodb)[pdphilip/elasticsearch

An Elasticsearch implementation of Laravel's Eloquent ORM

145360.2k4](/packages/pdphilip-elasticsearch)[analogue/orm

An intuitive Data Mapper ORM for PHP and Laravel

63547.1k3](/packages/analogue-orm)[toponepercent/baum

Baum is an implementation of the Nested Set pattern for Eloquent models.

3154.7k](/packages/toponepercent-baum)[mpyw/laravel-database-advisory-lock

Advisory Locking Features of Postgres/MySQL/MariaDB on Laravel

2860.5k](/packages/mpyw-laravel-database-advisory-lock)[ulobby/neoeloquent

Laravel wrapper for the Neo4j graph database REST interface

4473.4k](/packages/ulobby-neoeloquent)

PHPackages © 2026

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