PHPackages                             ems/beetree - 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. ems/beetree

ActiveLibrary

ems/beetree
===========

A generic library to work with b-trees

v0.3.1(1y ago)27.2k↑13.3%[1 PRs](https://github.com/mtils/beetree/pulls)1MITPHPPHP &gt;=8.2.0

Since Dec 16Pushed 1y ago2 watchersCompare

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

READMEChangelog (5)Dependencies (3)Versions (8)Used By (1)

BeeTree
=======

[](#beetree)

A generic library to work with b-trees.

This library offers a few interfaces to work with b-trees.

Until now there are only two implementations of such a b-tree model:

- Eloquent\\AdjacencyListModel and
- Eloquent\\OrderedAdjacencyListModel

I needed this libs for a few database tasks which did not allow nested set or other implementations. One big disadvantage of nested set and especially ClosureTable are the dependecies of all nodes among themselves.

If you like to copy one part of a tree into another tree of another table this is getting very funny with dependencies of lft, rgt or closuretables. So this library is to have a common interface to access trees and in each case you can deceide to use whatever tree implementation without changing the surrounding logic.

The interfaces have slightly different names of other implementations like `etrepat/baum` or `franzose/ClosureTable`. This is intended to write the interface implementations into your existing classes.

###  Health Score

39

—

LowBetter than 86% of packages

Maintenance35

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~593 days

Recently: every ~847 days

Total

7

Last Release

607d ago

PHP version history (3 changes)v0.1.0PHP &gt;=5.3.0

v0.1.1PHP &gt;=5.4.0

v0.3.0PHP &gt;=8.2.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/99acf76522a71f6ac363efaab2bec34dce2f74d3d82f1cb4680049dc4ef37cb7?d=identicon)[mtils](/maintainers/mtils)

---

Top Contributors

[![mtils](https://avatars.githubusercontent.com/u/2744124?v=4)](https://github.com/mtils "mtils (20 commits)")

---

Tags

modeltreeadjacencylist

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/ems-beetree/health.svg)

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

###  Alternatives

[mongodb/laravel-mongodb

A MongoDB based Eloquent model and Query builder for Laravel

7.1k7.2M71](/packages/mongodb-laravel-mongodb)[prettus/l5-repository

Laravel 5|6|7|8|9|10|11|12 - Repositories to the database layer

4.2k10.8M145](/packages/prettus-l5-repository)[spatie/laravel-translatable

A trait to make an Eloquent model hold translations

2.4k23.0M413](/packages/spatie-laravel-translatable)[tucker-eric/eloquentfilter

An Eloquent way to filter Eloquent Models

1.8k4.8M26](/packages/tucker-eric-eloquentfilter)[spatie/eloquent-sortable

Sortable behaviour for eloquent models

1.5k22.9M268](/packages/spatie-eloquent-sortable)[dyrynda/laravel-model-uuid

This package allows you to easily work with UUIDs in your Laravel models.

4802.8M8](/packages/dyrynda-laravel-model-uuid)

PHPackages © 2026

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