PHPackages                             mblsolutions/report - 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. [PDF &amp; Document Generation](/categories/documents)
4. /
5. mblsolutions/report

ActivePackage[PDF &amp; Document Generation](/categories/documents)

mblsolutions/report
===================

Laravel Report package

v5.2.8(2mo ago)78.5k↑18.2%7[4 issues](https://github.com/mblsolutions/report/issues)MITPHPPHP ^8.2CI passing

Since Aug 22Pushed 2mo ago4 watchersCompare

[ Source](https://github.com/mblsolutions/report)[ Packagist](https://packagist.org/packages/mblsolutions/report)[ RSS](/packages/mblsolutions-report/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (34)Versions (63)Used By (0)

Laravel Report
==============

[](#laravel-report)

[![Laravel Report Build](https://github.com/mblsolutions/report/actions/workflows/laravel-report-build-test.yml/badge.svg)](https://github.com/mblsolutions/report/actions/workflows/laravel-report-build-test.yml)

Import Laravel Reporting into any Laravel 6+ application using this package.

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

[](#installation)

Install Laravel Report with composer.

```
php composer require mblsolutions/report
```

Copy the package config to your local config.

```
php artisan vendor:publish --tag=report-config
```

Copy the package database migrations.

```
php artisan vendor:publish --tag=report-migrations
```

Laravel Report comes with its own database migrations, once the package has been installed run the migrations.

```
php artisan migrate
```

Usage
-----

[](#usage)

Once the package has been required into your project you can configure which parts of the package you would like to use.

### Routes

[](#routes)

To enable the package json api routes in your application add the following to your routes file.

```
Report::routes();
```

#### Manage routes

[](#manage-routes)

To configure custom middleware/guards around report management/creation only routes.

```
Report::manageRoutes();
```

#### View Routes

[](#view-routes)

To configure custom middleware/guards around report view only routes.

```
Report::viewRoutes();
```

#### Export Routes

[](#export-routes)

To configure custom middleware/guards around report export result only routes.

```
Report::exportRoutes();
```

### Applying Custom Middleware/Gates

[](#applying-custom-middlewaregates)

To apply middleware to the routes, wrap the routes in middleware groups.

```
Route::middleware(['admin'])->group(function () {
    Report::manageRoutes();
});

Route::middleware(['user'])->group(function () {
    Report::viewRoutes();
});

Route::middleware(['web'])->group(function () {
    Report::exportRoutes();
});
```

To apply gates to the routes, wrap the routes in middleware groups.

```
Route::middleware(['can:manage-reports'])->group(function () {
    Report::manageRoutes();
});

Route::middleware(['can:view-reports'])->group(function () {
    Report::viewRoutes();
});
```

### Report Select Parameter Models

[](#report-select-parameter-models)

To enable select options when creating/rendering reports, you must add the available model types to be reported on in the `report.php` config file. Any models added to this array will be available when creating new report fields.

Models added to the array should implement the `\MBLSolutions\Report\Interfaces\PopulatesReportOption` interface

Please Note: We recommend that large record sets are not used as select types, due to usability/browser performance issues.

```
[
    'models' => [
        \App\User::class,
        \App\Order::class
    ]
]
```

### Scheduled Reporting

[](#scheduled-reporting)

To enable scheduled reporting add the following line into the `schedule` method of the `\App\Console\Kernel` file of your laravel application.

```
$schedule->command(\MBLSolutions\Report\Console\Commands\DispatchScheduledReportsCommand::class)->hourly();
```

### Report JSON API

[](#report-json-api)

The following endpoints are available to you once the routes have been added:

#### View Routes (synchronous)

[](#view-routes-synchronous)

MethodURINameGET/api/reportreport.indexGET/api/report/{report}report.showPOST/api/report/{report}report.renderPOST/report/{report}/exportreport.exportGET/api/report/connectionreport.connection.listGET/api/report/middlewarereport.middleware.listGET/api/report/data/typereport.data.type.listGET/api/report/modelreport.model.list### Queued View Routes (asynchronous)

[](#queued-view-routes-asynchronous)

MethodURINameGET/api/report/queuereport.queue.indexGET/api/report/queue/pendingreport.queue.pending.indexPOST/api/report/queue/{report}report.queue.renderGET/api/report/queue/job/{job}report.queue.jobGET/api/report/queue/result/{job}report.queue.resultGET/api/report/queue/export/{job}report.queue.export### Scheduled Report Routes

[](#scheduled-report-routes)

MethodURINameGET/report/schedule/frequencyreport.schedule.frequenciesGET/report/schedulereport.schedule.indexPOST/report/schedulereport.schedule.createGET/report/schedule{schedule}report.schedule.showPATCH/report/schedule/{schedule}report.schedule.createDELETE/report/schedule/{schedule}report.schedule.destroy#### Export Routes

[](#export-routes-1)

MethodURINameGET/report/{report}/exportreport.export#### Manage Routes

[](#manage-routes-1)

MethodURINameGET/api/report/managereport.manage.indexPOST/api/report/managereport.manage.storePOST/api/report/testreport.manage.testGET/api/report/manage/{report}report.manage.showPATCH/api/report/manage/{report}report.manage.updateDELETE/api/report/manage/{report}report.manage.destroyDELETE/api/report/manage/settingsreport.manage.settings### Report Events

[](#report-events)

Events are fired at critical points during report creation/completion

EventDescriptionDataNamespaceReportCreatedA new report was created.Report $reportMBLSolutions\\Report\\Events\\ReportCreatedReportUpdatedA report was updated.Report $reportMBLSolutions\\Report\\Events\\ReportUpdatedReportDestroyedA report was deleted.Report $reportMBLSolutions\\Report\\Events\\ReportDestroyedReportRenderedA report was rendered.Report $reportMBLSolutions\\Report\\Events\\ReportRenderedReportExportedA report was exported.Report $reportMBLSolutions\\Report\\Events\\ReportExportedReportRenderStartedA queued report job to render was started.Report $report, ReportJob $jobMBLSolutions\\Report\\Events\\ReportRenderStartedReportChunkCompleteA queued report job chunk was completed.Report $report, ReportJob $jobMBLSolutions\\Report\\Events\\ReportChunkCompleteReportRenderCompleteA queued report job render was completed.Report $report, ReportJob $jobMBLSolutions\\Report\\Events\\ReportRenderCompleteScheduledReportDispatchedA scheduled report was run.ScheduledReport $scheduleMBLSolutions\\Report\\Events\\ReportRenderComplete

###  Health Score

56

—

FairBetter than 98% of packages

Maintenance73

Regular maintenance activity

Popularity32

Limited adoption so far

Community20

Small or concentrated contributor base

Maturity85

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 85.4% 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 ~42 days

Recently: every ~93 days

Total

57

Last Release

81d ago

Major Versions

v1.3.0 → v2.0.02021-10-20

v2.7.7 → v3.0.02022-01-12

v3.x-dev → v4.2.02022-04-28

v4.3.1 → v5.0.02022-12-09

v4.x-dev → v5.2.02024-11-19

PHP version history (7 changes)v1.0.0PHP &gt;=7.1

v2.0.0PHP ^7.4|^8.0

v3.0.0PHP ^8.0|^8.1

v3.1.0PHP ^7.3||^8.0

v3.1.1PHP ^7.4||^8.0

v5.0.0PHP ^8.0

v5.2.7PHP ^8.2

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/610936?v=4)[Christian Innerbichler](/maintainers/lerouse)[@lerouse](https://github.com/lerouse)

![](https://www.gravatar.com/avatar/102e5b958c4a1e833fd8812ac866581ccf52bbc0cd9627253589025c42cf0f37?d=identicon)[hayleyberryl2s](/maintainers/hayleyberryl2s)

---

Top Contributors

[![lerouse](https://avatars.githubusercontent.com/u/610936?v=4)](https://github.com/lerouse "lerouse (216 commits)")[![rajaakhtar](https://avatars.githubusercontent.com/u/5342242?v=4)](https://github.com/rajaakhtar "rajaakhtar (11 commits)")[![JonKnibbsPP](https://avatars.githubusercontent.com/u/132350278?v=4)](https://github.com/JonKnibbsPP "JonKnibbsPP (9 commits)")[![Schneidershades](https://avatars.githubusercontent.com/u/33626602?v=4)](https://github.com/Schneidershades "Schneidershades (4 commits)")[![hayleyberryl2s](https://avatars.githubusercontent.com/u/152175725?v=4)](https://github.com/hayleyberryl2s "hayleyberryl2s (4 commits)")[![rsloan-mlbsolutions](https://avatars.githubusercontent.com/u/115983535?v=4)](https://github.com/rsloan-mlbsolutions "rsloan-mlbsolutions (4 commits)")[![drew-bassett](https://avatars.githubusercontent.com/u/75068256?v=4)](https://github.com/drew-bassett "drew-bassett (3 commits)")[![eric-paypoint](https://avatars.githubusercontent.com/u/171240985?v=4)](https://github.com/eric-paypoint "eric-paypoint (2 commits)")

---

Tags

laravelreportredu

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/mblsolutions-report/health.svg)

```
[![Health](https://phpackages.com/badges/mblsolutions-report/health.svg)](https://phpackages.com/packages/mblsolutions-report)
```

###  Alternatives

[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)[laravel/pulse

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

1.7k12.1M99](/packages/laravel-pulse)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)[flarum/core

Delightfully simple forum software.

211.3M1.9k](/packages/flarum-core)[laravel-zero/framework

The Laravel Zero Framework.

3371.4M369](/packages/laravel-zero-framework)[laragear/preload

Effortlessly make a Preload script for your Laravel application.

119363.5k](/packages/laragear-preload)

PHPackages © 2026

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