Audio Playlist Widget
Package docs status
Section titled “Package docs status”This page is generated from package source documentation in the Capell packages repository and the checked-in manifest. Source documentation is not distribution status. Before running a Composer command, verify that the exact package and compatible 1.x release are available through public Packagist or the authenticated marketplace account.
| Field | Value |
|---|---|
| Composer package | capell-app/widget-audio-playlist |
| Package slug | widget-audio-playlist |
| Product group | Capell Foundation |
| Tier | free |
| Bundle | foundation |
| Runtime contexts | admin, frontend |
| Capell version | ^1.0 |
| Source repository | capell-app/packages |
| Source path | packages/widget-audio-playlist |
| Docs source | packages/widget-audio-playlist/docs |
| Manifest | capell.json |
What This Plugin Adds
Section titled “What This Plugin Adds”Audio Playlist Widget is an Available, No schema impact Capell package in the Capell Foundation product group. It ships as capell-app/widget-audio-playlist and extends these surfaces: admin, frontend.
Audio Playlist adds a Layout Builder widget for local audio tracks with artwork, native controls, transcripts, and chapter markers. Its configuration accepts a bounded playlist and rejects remote audio sources.
Editors configure the playlist in Layout Builder, and visitors receive a public player with track context and supporting transcript or chapter content when supplied.
Evidence: src/Filament/AudioPlaylistWidget.php, resources/views/widget.blade.php, tests/Feature/WidgetAudioPlaylistTest.php, capell.json.
Status details:
- Status: Available
- Tier: free
- Bundle: foundation
- Composer package:
capell-app/widget-audio-playlist - Namespace:
Capell\WidgetAudioPlaylist - Theme key: not applicable
Why It Matters
Section titled “Why It Matters”For developers: The package registers a typed widget extension and validates media and nested track data before the public Blade render.
For teams: Teams can publish a structured listening experience with useful context instead of assembling separate players and transcript blocks.
Evidence: src/Providers/WidgetAudioPlaylistServiceProvider.php, src/Filament/AudioPlaylistWidget.php, tests/Feature/WidgetAudioPlaylistTest.php, resources/views/widget.blade.php.
Screens And Workflow
Section titled “Screens And Workflow”Screenshot contract: docs/screenshots.json.
- Audio Playlist Widget extension card (marketplace, required).
- Audio Playlist fields in Layout Builder (admin, optional).
- Audio Playlist public output (frontend, optional).
Technical Shape
Section titled “Technical Shape”- Service providers:
Capell\WidgetAudioPlaylist\Providers\WidgetAudioPlaylistServiceProvider. - Filament classes:
AudioPlaylistWidget. - Data objects:
AudioChapterData,AudioPlaylistInputData,AudioPlaylistRenderData,AudioTrackData. - Manifest contributions:
content-widget: Capell\WidgetAudioPlaylist\WidgetAudioPlaylistContribution. - Health checks:
Capell\WidgetAudioPlaylist\Health\WidgetAudioPlaylistHealthCheck. - Blade views:
packages/widget-audio-playlist/resources/views/widget.blade.php. - Cache tags:
widget-audio-playlist.
Data Model
Section titled “Data Model”This package has no schema impact. It extends Capell through content-widget contributions instead of declaring package-owned tables.
Install Impact
Section titled “Install Impact”- Required packages:
capell-app/admin,capell-app/core,capell-app/frontend,capell-app/layout-builder. - Admin navigation: no admin page or resource contribution is declared.
- Admin/editor extensions:
content-widget: WidgetAudioPlaylistContribution. - Permissions: none declared in
capell.json. - Public routes: none declared.
- Database changes: no package migrations declared.
- Config: no package config files.
- Settings: no package settings declared.
- Queues or schedules: none declared.
- Cache tags:
widget-audio-playlist. - Commands: none declared.
Common Pitfalls
Section titled “Common Pitfalls”- Keep required Capell packages on compatible v4 releases:
capell-app/admin,capell-app/core,capell-app/frontend,capell-app/layout-builder. - Keep public Blade and cached HTML free of authoring markers, model IDs, permissions, signed editor URLs, and lazy database queries.
- Custom write integrations must preserve invalidation for
widget-audio-playlistcache tags.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Likely cause | Check | Fix |
|---|---|---|---|
| Package surface is missing after install | Provider or manifest is not loaded | Confirm capell.json, package composer.json, and provider registration | Reinstall the package, refresh Composer autoload, and clear host caches |
| Public output leaks unexpected state | Render data, cache variation, or authoring boundary has regressed | Check public Blade, cache tags, and public-output safety tests | Move data loading out of Blade and rerun the package public-output tests |
Quick Start
Section titled “Quick Start”- Install the package:
composer require capell-app/widget-audio-playlist. - No package-specific setup command or migrations are declared.
- Open the package detail or install-intent surface and confirm the Audio Playlist Widget extension card is present.
Next Steps
Section titled “Next Steps”- Package docs
- Overview
- Troubleshooting
- Screenshot contract
- Marketplace assets
- Capell content language plan
- Capell documentation design system
- Capell and package ERD notes
- Related packages: Layout Builder.
- Focused tests:
vendor/bin/pest packages/widget-audio-playlist/tests --configuration=phpunit.xml.