Download the PHP package 3neti/report-registry without Composer
On this page you can find all versions of the php package 3neti/report-registry. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download 3neti/report-registry
More information about 3neti/report-registry
Files in 3neti/report-registry
Package report-registry
Short Description Driver-based report registry with multi-format output and Handlebars templating
License MIT
Informations about the package report-registry
3neti/report-registry
Report Registry and Execution Engine for Laravel
Overview
3neti/report-registry is a Laravel package for defining, discovering, executing, and rendering reports using YAML-based drivers.
It provides:
- Driver-based report definitions (YAML)
- Resolver-driven data execution
- Pluggable output formatters (JSON, HTML, CSV, Text)
- Clean separation between data resolution and rendering
Installation
Laravel discovers the package service provider automatically.
Key Concepts
Report Driver
A YAML file that defines:
- metadata (id, title, description)
- columns
- filters
- resolver class
- optional templates
Resolver
A class that implements:
Responsible for fetching and returning report data.
Executor
ReportExecutor orchestrates:
- loading the driver
- executing the resolver
- returning either raw data or formatted output
Output Modes
The executor supports two output categories:
1. Raw (machine-readable)
Returns structured PHP array:
Structure:
2. Rendered (string output)
Formats:
jsonhtmlcsvtext
All return strings.
Example Usage
Resolver Example
CLI Usage
Options:
--filter=status:approved--sort=created_at--sort-dir=asc--per-page=50--page=1--output=report.json
Formatter Contract
All formatters implement:
Built-in formatters:
- JSON
- HTML
- CSV
- Text
Driver Structure (YAML)
Design Principles
- Separation of concerns
- Resolver = data
- Formatter = output
- Driver-driven architecture
- Extensible format system
- API-first execution model
Testing
The current release matrix covers PHP 8.3 and 8.4 on Laravel 12 and 13. Laravel 11 remains supported by the package constraints.
Run tests:
Coverage includes:
- driver loading
- version resolution
- execution
- formatting
- output contracts
License
MIT
All versions of report-registry with dependencies
illuminate/support Version ^11.0 || ^12.0 || ^13.0
illuminate/database Version ^11.0 || ^12.0 || ^13.0
spatie/laravel-data Version ^4.0
symfony/yaml Version ^7.0
zordius/lightncandy Version ^1.2