PHPackages                             buzztech/boi-backend - 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. [Framework](/categories/framework)
4. /
5. buzztech/boi-backend

ActiveLibrary[Framework](/categories/framework)

buzztech/boi-backend
====================

BOI Laravel backend package

0.5.3(3w ago)0110↓92.3%MITPHPPHP ^8.2

Since Mar 22Pushed 1mo agoCompare

[ Source](https://github.com/BuzzTechnics/boi-backend)[ Packagist](https://packagist.org/packages/buzztech/boi-backend)[ Docs](https://github.com/BuzzTechnics/boi-backend)[ RSS](/packages/buzztech-boi-backend/feed)WikiDiscussions main Synced 2w ago

READMEChangelog (1)Dependencies (38)Versions (36)Used By (0)

boi-backend
===========

[](#boi-backend)

**Composer package** shared by BOI Laravel apps (Glow, portals, …).

**Full integration guide:** see **[`doc/README.md`](doc/README.md)** (package vs app, database connection, shared models, Nova &amp; policies).

boi-api HTTP proxy (plug &amp; play)
------------------------------------

[](#boi-api-http-proxy-plug--play)

Forwards browser calls to your app’s **`/api/boi-api/{path}`** to **`BOI_API_URL`** with server-only **`BOI_API_KEY`** and headers **`X-Boi-User`** / **`X-Boi-App`**.

1. `composer require buzztech/boi-backend` (already auto-discovers `BoiBackendServiceProvider`).
2. Set **`.env`**: `BOI_API_URL`, `BOI_API_KEY`, `BOI_APP` (slug, e.g. `glow`), optional `BOI_USER_HEADER` / `BOI_APP_HEADER`.
3. In **`routes/web.php`** (inside your `auth` + `verified` group):

```
use Boi\Backend\BoiBackend;

BoiBackend::proxyRoute();
```

4. **Loan applications:** for paths `api/loan-applications/{id}/…`, the proxy checks **`App\Models\Application`** exists and **`user_id`** matches the logged-in user (same convention for all BOI apps).

Publish full defaults: `php artisan vendor:publish --tag=boi-backend-proxy`

Other features
--------------

[](#other-features)

- **Contracts**: `StatementDataProviderInterface`, `StatementUpdaterInterface` (implemented by the deployed **boi-api** service or tests).
- **PaystackBanks** (`Boi\Backend\Support\PaystackBanks`): sync bank list + short names into your `Bank` model (used by seeders).
- **`Boi\Backend\Models\Bank`**: `banks` on connection `boi_api` (`BOI_DB_*`). **boi-api** can keep `App\Models\Bank` via `config/banks.php`.

EDOC / bank-statement API live in **boi-api**.

Installation
------------

[](#installation)

```
composer require buzztech/boi-backend
```

Optional publish tags: `boi-backend-config` (`banks.php`), `boi-backend-boi-api` (`boi_api.php`), `boi-backend-proxy` (`boi_proxy.php`).

Laravel Nova, factories, seeders
--------------------------------

[](#laravel-nova-factories-seeders)

See **[`doc/`](doc/README.md)** — Nova resources and `Gate::policy` are **per app**; factories/seeders live in the package.

Development
-----------

[](#development)

```
composer install
composer test
```

Releasing (`buzztech/boi-backend`)
----------------------------------

[](#releasing-buzztechboi-backend)

1. Merge changes to `main` and ensure `composer test` passes.
2. Tag a semver release (Composer / Packagist use the tag, not a `version` field in `composer.json`):

    ```
    git tag v0.2.0
    git push origin v0.2.0
    ```
3. **Packagist** (optional): submit [`https://github.com/BuzzTechnics/boi-backend`](https://github.com/BuzzTechnics/boi-backend) once; future tags are picked up automatically.
4. **Consumers** (e.g. `boi-api`): require `"buzztech/boi-backend": "^0.2@dev"` while `main` tracks the next minor (`@dev` allows the `0.2.x-dev` alias; with `prefer-stable`, Composer prefers **the latest `v0.2.x` tag**). For stable-only installs after tags exist, use `"^0.2"`. Add a VCS repository only if the package is not on Packagist:

    ```
    "repositories": [
        { "type": "vcs", "url": "https://github.com/BuzzTechnics/boi-backend.git" }
    ]
    ```

    If `../boi-backend` exists as a sibling checkout, a **path** repository (as in `boi-api`) keeps local development on a symlinked copy.

###  Health Score

41

—

FairBetter than 87% of packages

Maintenance92

Actively maintained with recent releases

Popularity10

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

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

Recently: every ~8 days

Total

35

Last Release

21d ago

### Community

Maintainers

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

---

Top Contributors

[![provydon](https://avatars.githubusercontent.com/u/31216637?v=4)](https://github.com/provydon "provydon (42 commits)")

---

Tags

laravelproxybank statementsboiedoc

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/buzztech-boi-backend/health.svg)

```
[![Health](https://phpackages.com/badges/buzztech-boi-backend/health.svg)](https://phpackages.com/packages/buzztech-boi-backend)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3345.1M337](/packages/psalm-plugin-laravel)[laravel/ai

The official AI SDK for Laravel.

9782.1M161](/packages/laravel-ai)[laravel/cashier

Laravel Cashier provides an expressive, fluent interface to Stripe's subscription billing services.

2.5k28.4M136](/packages/laravel-cashier)[laravel/mcp

Rapidly build MCP servers for your Laravel applications.

76518.2M118](/packages/laravel-mcp)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k14.1M122](/packages/laravel-pulse)[larastan/larastan

Larastan - Discover bugs in your code without running it. A phpstan/phpstan extension for Laravel

6.4k51.0M7.5k](/packages/larastan-larastan)

PHPackages © 2026

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