PHPackages                             kg-bot/hookbox-ui-core - 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. kg-bot/hookbox-ui-core

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

kg-bot/hookbox-ui-core
======================

Backend-only UI core for Hookbox inbox and replay surfaces.

v1.0.0(4w ago)00MITPHPPHP ^8.2

Since May 12Pushed 4w agoCompare

[ Source](https://github.com/kg-bot/hookbox-ui-core)[ Packagist](https://packagist.org/packages/kg-bot/hookbox-ui-core)[ RSS](/packages/kg-bot-hookbox-ui-core/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (1)Dependencies (15)Versions (2)Used By (0)

Hookbox UI Core
===============

[](#hookbox-ui-core)

Hookbox UI Core is the shared backend-only package for Hookbox inbox and replay experiences. It is JSON-first by default through the responder contract and does not render framework-specific UI.

Support
-------

[](#support)

Hookbox UI Core supports Laravel 12 and 13 on PHP 8.2+.

What It Provides
----------------

[](#what-it-provides)

Laravel apps that want a Hookbox inbox still need the same backend concerns over and over: request parsing, authorization, pagination defaults, normalized page data, and safe replay orchestration. Hookbox UI Core packages those concerns into a headless backend layer so Blade, Livewire, Filament, Vue, or other adapters can share one stable UI-core surface instead of rebuilding it per stack.

The package currently provides:

- route registration for inbox, message detail, and replay endpoints
- inbox query parsing and pagination defaults
- authorization checks for inbox access, replay, and redacted payload visibility
- normalized inbox and message-detail view models
- JSON responses by default via `Hookbox\UiCore\Contracts\HookboxUiResponder`
- replay orchestration that defaults to dry-run behavior

Dependencies
------------

[](#dependencies)

`hookbox-ui-core` depends on `kg-bot/hookbox` for the stable read and replay contract. UI Core sits on top of that package and does not read Hookbox internal models, receipts, jobs, queued handlers, or other implementation details directly.

Supported integration surface:

- `Hookbox\Repositories\MessageRepository`
- `Hookbox\Repositories\SourceRepository`
- `Hookbox\ReplayService`
- `Hookbox\ReplayOptions`
- `Hookbox\Repositories\MessageFilters`
- `Hookbox\Repositories\MetricsRange`
- `Hookbox\Views\WebhookMessageView`
- `Hookbox\Views\WebhookAttemptView`
- `Hookbox\Views\SourceView`
- `Hookbox\Views\MetricsSummary`
- `Hookbox\Views\SourceCounters`

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

[](#installation)

This package depends on the published `kg-bot/hookbox` Composer package.

To install dependencies for local development in this repository, run:

```
composer install
```

For a release install in a consuming Laravel application, require UI Core. Composer will install its `kg-bot/hookbox` dependency automatically:

```
composer require kg-bot/hookbox-ui-core
```

If you need to override package defaults, publish the config with:

```
php artisan vendor:publish --tag=hookbox-ui-config
```

Additional installation details are documented in [`docs/installation.md`](docs/installation.md).

Default Routes
--------------

[](#default-routes)

When `hookbox-ui.enabled` is `true`, the package registers these routes under `hookbox-ui.route_prefix`, which defaults to `hookbox`:

- `GET /hookbox/messages`
- `GET /hookbox/messages/{message}`
- `POST /hookbox/messages/{message}/replay`

Default config keys:

- `enabled`
- `route_prefix`
- `middleware`
- `pagination.per_page`
- `replay.allow_live`

Authorization
-------------

[](#authorization)

The package expects these Laravel abilities to exist:

- `viewHookboxInbox`
- `replayHookboxMessage`
- `viewRedactedPayload`

`viewHookboxInbox` gates the inbox and message detail endpoints. `replayHookboxMessage` gates replay requests. `viewRedactedPayload` is exposed in the JSON page payload so adapters can decide whether to show redacted content affordances.

Replay Safety Defaults
----------------------

[](#replay-safety-defaults)

Replay stays dry-run by default.

- Message details expose `defaultsToDryRun: true`
- The replay endpoint only performs a live replay when the request explicitly sends `live_replay=true`
- Live replay still requires `hookbox-ui.replay.allow_live` to be enabled

Out Of Scope
------------

[](#out-of-scope)

This repository is intentionally backend-only. It does not render Blade, Livewire, Inertia, Vue, Filament, or any other framework-specific interface.

Adapter packages are intentionally out of scope for this repository. Future UI packages should consume UI Core rather than reimplementing Hookbox inbox and replay business rules.

Additional Docs
---------------

[](#additional-docs)

- [`docs/installation.md`](docs/installation.md)
- [`docs/ui-contract.md`](docs/ui-contract.md)
- [`docs/examples/json-responses.md`](docs/examples/json-responses.md)

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance94

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

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

Unknown

Total

1

Last Release

28d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/5282920?v=4)[KgBot](/maintainers/kg-bot)[@kg-bot](https://github.com/kg-bot)

---

Top Contributors

[![kg-bot](https://avatars.githubusercontent.com/u/5282920?v=4)](https://github.com/kg-bot "kg-bot (1 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StyleLaravel Pint

Type Coverage Yes

### Embed Badge

![Health badge](/badges/kg-bot-hookbox-ui-core/health.svg)

```
[![Health](https://phpackages.com/badges/kg-bot-hookbox-ui-core/health.svg)](https://phpackages.com/packages/kg-bot-hookbox-ui-core)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3325.1M337](/packages/psalm-plugin-laravel)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9732.3M121](/packages/roots-acorn)[laravel/mcp

Rapidly build MCP servers for your Laravel applications.

76318.2M110](/packages/laravel-mcp)[api-platform/laravel

API Platform support for Laravel

59156.3k10](/packages/api-platform-laravel)[laravel/pulse

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

1.7k14.1M120](/packages/laravel-pulse)[laravel-doctrine/orm

An integration library for Laravel and Doctrine ORM

8455.5M96](/packages/laravel-doctrine-orm)

PHPackages © 2026

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