PHPackages                             jdriscoll/coach - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. jdriscoll/coach

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

jdriscoll/coach
===============

A lightweight service bus

v0.9.0(3mo ago)04BSD-2-ClausePHPPHP ^8.5

Since Jun 1Pushed 3mo ago1 watchersCompare

[ Source](https://github.com/jj101k/coach)[ Packagist](https://packagist.org/packages/jdriscoll/coach)[ RSS](/packages/jdriscoll-coach/feed)WikiDiscussions main Synced 2d ago

READMEChangelogDependencies (3)Versions (4)Used By (0)

What This Is
============

[](#what-this-is)

This is a lightweight service bus so you can do your transforms without it costing too much.

Each input request that isn't handled locally (including trivial 404s) is passed to another service with either input transformed or output transformed or both or neither.

Input requests are stored while they're being worked on; likewise output requests and input responses. Request/response bodies are only stored to the extent that it is cheap to do so - thus known-large message bodies are not stored, and streaming message bodies may be stored if they're known to be short when the stream completes. Authentication data is not retained. Stored message bodies are encrypted to more provably prevent their interception and have a maximum lifetime of 24 hours to mitigate the chance of them being extracted after the fact. Request/response data may be retained for a short time after request processing to aid in debugging.

Overhead for this service should be only about 10ms when configured correctly for cases with no meaningful transforms.

Intended Use Cases
==================

[](#intended-use-cases)

This is specifically intended to help with network API versioning, so you can maintain compatibility for an old version without having to keep and maintain two or more network services. If doing so you still need to have functionality equivalent to the old version somewhere, and you should pay particular attention to whether you're inflating an O(1) request into O(n) or worse.

As a secondary concern, this can also handle cases where you may intend some level of request abstraction which would not be practical on the backend services themselves, for example combining data from multiple services.

###  Health Score

43

—

FairBetter than 91% of packages

Maintenance80

Actively maintained with recent releases

Popularity3

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity69

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

Total

3

Last Release

103d ago

PHP version history (2 changes)v0.8.0PHP ^7.1

v0.9.0PHP ^8.5

### Community

Maintainers

![](https://www.gravatar.com/avatar/6c5599e11c6d7b39086d53133c1ee1420f39c9f29b012a02aedbc11138f4d8d1?d=identicon)[jj101k](/maintainers/jj101k)

---

Top Contributors

[![jj101k](https://avatars.githubusercontent.com/u/444556?v=4)](https://github.com/jj101k "jj101k (18 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/jdriscoll-coach/health.svg)

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

###  Alternatives

[pingpong/themes

Laravel Themes

3023.7k2](/packages/pingpong-themes)

PHPackages © 2026

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