PHPackages                             spora-ai/spora-plugin-media-archive - 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. [Admin Panels](/categories/admin)
4. /
5. spora-ai/spora-plugin-media-archive

ActiveSpora-plugin[Admin Panels](/categories/admin)

spora-ai/spora-plugin-media-archive
===================================

Admin UI for browsing, filtering, and downloading media archived by Spora agents.

v0.1.3(3w ago)0113↓60%MITPHPPHP ^8.4.1CI passing

Since Jul 10Pushed 2w agoCompare

[ Source](https://github.com/spora-ai/spora-plugin-media-archive)[ Packagist](https://packagist.org/packages/spora-ai/spora-plugin-media-archive)[ RSS](/packages/spora-ai-spora-plugin-media-archive/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (14)Versions (6)Used By (0)

spora-plugin-media-archive
==========================

[](#spora-plugin-media-archive)

Admin UI for browsing, filtering, and downloading media archived by Spora agents.

This plugin contributes the **Media Archive** app to the host's Apps dropdown. The panel is a pre-built Vue SPA delivered as a separate Composer package (`spora-ai/spora-plugin-media-archive-frontend`, type `spora-plugin-frontend`). The two-package split lets the frontend evolve on its own release cadence and lets backend-only operators skip the bundle entirely.

Install
-------

[](#install)

```
composer require spora-ai/spora-plugin-media-archive
composer require spora-ai/spora-plugin-media-archive-frontend
```

Both packages are required: the PHP package contributes the admin-panel metadata (`MediaArchiveApp` → `VueAppInterface`), and the frontend package ships the Vue IIFE bundle that the host SPA lazy-loads at runtime.

Requires `spora-ai/spora-core` ≥ 0.11.1 (ships the standalone `MediaAssetSerializer` that emits the asset `filename` on the wire — versions prior to 0.11.1 render `unknown` on the admin panel because the controller's inline `serialize()` omits the field).

What it does
------------

[](#what-it-does)

- Surfaces rows from the `media_assets` table (indexed by `MediaArchiveService`) as a filterable grid in the admin UI.
- Filters by media type, plugin, tool, agent, and date range.
- Click-through detail drawer with metadata (dimensions, duration, mime type, source URL).
- One-click download via the existing `AssetController::show()` route.

The plugin itself adds no tools, drivers, recipes, or migrations — it is purely presentational.

Companion plugins
-----------------

[](#companion-plugins)

Listed in `composer.json` under `suggest`:

- `spora-ai/spora-plugin-minimax` — image, speech, music, and video generation. Rows produced by these tools show up here.
- `spora-ai/spora-plugin-email` — email send/receive. Outbound attachments surface as archived documents.

Reference
---------

[](#reference)

The canonical reference (REST contract, ingestion API, retention guidance, configuration flags) lives on the docs site:

**[docs.spora-ai.com/develop/plugins/reference/media-archive](https://docs.spora-ai.com/develop/plugins/reference/media-archive)**

License
-------

[](#license)

MIT — see [LICENSE](LICENSE).

###  Health Score

43

—

FairBetter than 89% of packages

Maintenance96

Actively maintained with recent releases

Popularity14

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity45

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

Total

4

Last Release

26d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/5be6ae8a46a938dbf3d35611aa2724446742020f0eeefdfa94333aa2d0ee40a2?d=identicon)[fabeat](/maintainers/fabeat)

---

Top Contributors

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

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/spora-ai-spora-plugin-media-archive/health.svg)

```
[![Health](https://phpackages.com/badges/spora-ai-spora-plugin-media-archive/health.svg)](https://phpackages.com/packages/spora-ai-spora-plugin-media-archive)
```

###  Alternatives

[loevgaard/sylius-brand-plugin

A Sylius plugin for handling brands

29159.6k3](/packages/loevgaard-sylius-brand-plugin)[dog-ears/crud-d-scaffold

Extend Laravel 7's generators scaffold.

183.1k](/packages/dog-ears-crud-d-scaffold)

PHPackages © 2026

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