Download the PHP package nova-bi/nova-dashboard-manager without Composer
On this page you can find all versions of the php package nova-bi/nova-dashboard-manager. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package nova-dashboard-manager
Nova Dashboard Manager
The Dashboard-Manager for Nova-Dashboard allows you to configure dashboards within your Nova-App
Installation:
You can install the package via composer:
composer require nova-bi/nova-dashboard-manager
If you want to specify your own table names you need to edit the configurations before running the migrations:
nova-dashboard.table_name
nova-dashboard-manager.tables
Recommended: Publish Configuration File for adjusting model and table names of Nova-Dashboard
php artisan vendor:publish --provider="DigitalCreative\NovaDashboard\ToolServiceProvider" --tag="config"
Recommended: Publish Configuration File for all configurations of Nova-Dashboard-Manager
php artisan vendor:publish --provider="NovaBi\NovaDashboardManager\DashboardManagerServiceProvider" --tag="config"
Optional: Publish Migrations
php artisan vendor:publish --provider="NovaBi\NovaDashboardManager\DashboardManagerServiceProvider" --tag="migrations"
Run Migrations
php artisan migrate
Usage
Open NovaServiceProvider.php
to add classes:
Enhance the tools() methods like this:
Start with the Playground
The package comes with working playground examples so you can test the functionality and use the code as an example for your own implementations.
By default the Playground-Setup is configured, which will give you following basic metrics from you Nova installation:
- Users
- Boards
- Widgets
- ActionEvents
- ActionEventTypes
Following visualisations are currently available
- Value
- ChartJS Line
- ChartJS Bar
And these Filters are available:
- DateRange
- ActionEventTypes
Go to the Dashboard-Manager Tools menu and setup some demo widget, filters and dashboards.
After configuration of your dashboard you need to reload Nova to show the new Menu-Item to access the dashboard
Develop and Register your own Metrics, Filters and Visuals
Seperation of metric calculation and visualisation
The Metric classes are the container for all metric calculations. The calculations are adoptable to the supported visualisations, so e.g. within a Users
-metric you can calculate e.g. the total number of users for a Value-Visualisation or provide Trend-Data for a Trend-Visualisation.
configurable and re-usable
With custom configurations you can make your Boards, Metrics, Filters and Visualisations re-usable - check out nova-bi/nova-dashboard-manager/src/Models/Datametricables/users.php
how to use the same metric to show the number of total users and users with verified email.
Code Structure
Following the recommended structure to build your own Metrics, Filters and Visuals. Please check the sources of this package in nova-bi/nova-dashboard-manager/src
for details
/myDashboard
/Calculations All calculations - could be done in metrics as well
/Models
/Datafilterables Models representing filters
/Datametricables Models representing metrics
/Datavisualables Models representing visuals
/Visuals Implementation of visuals,
must extend `DigitalCreative\ValueWidget\Widgets`
must use Trait \NovaBi\NovaDashboardManager\Models\Datavisualables\Visuals\Visuable
/Nova
/Datafilterables Resources for filter models
/Datametricables Resources for metric models
/Datavisualables Resources for visual models
Register your sources in configurations:
nova-dashboard-manager.datafilterables
nova-dashboard-manager.datametricables
nova-dashboard-manager.datavisualables
Now you can create new Filters and Metrics in your Dashboard configuration and attach them to dashboards.
Debugging of Calculations
using Trait \NovaBi\NovaDashboardManager\Calculations\Calculatableyou can view the raw SQL using the
debugQuery()` method
dd($calculation->debugQuery($calculationCurrentValue->query()));
Direct Access to Dashboards
The very nice Collapsible Resource Manager package allows you to customize the menu structure.
Configure nova-dashboard-manager.showToolMenu
to false
to hide the tool menue
With the following code the Dashboards and the configurations are directly accessible through the Menu (see know issues below - do you know how to solve this?)
Known issue
- pages of the same route are not updated when navigating directly between views e.g. using Collapsible Resource Manager . Therefor when switching between dashboards they are not updated - we hope to solve this soon.
Contributing
If you would like to contribute please fork the project and submit a PR.
Check out https://github.com/Nova-BI/nova-databoards/issues for open development tasks and issues.
Credits notice
This package is highly depending on following selection of packages from the huge range of excellent packages for laravel and nova.
- Nova-Dashboard
- Collapsible Resource Manager
- Inline MorphTo Field
- Nova Field Dependency Container
- Nova Global Filter
- Nova Sortable
- Nova Text Card
- laravel-schemaless-attributes
License
This software is released under The MIT License (MIT).
All versions of nova-dashboard-manager with dependencies
davidpiesse/nova-toggle Version ^0.0.8
digital-creative/nova-dashboard Version dev-master
marispro/nova-inline-morph-to Version *
digital-creative/nova-data-table Version ^0.1.1
digital-creative/nova-pill-filter Version *
digital-creative/nova-range-input-filter Version dev-master
digital-creative/value-widget Version dev-master
digitalazgroup/nova-plain-text-field Version ^0.0.4
digital-creative/chartjs-widget Version dev-master
dillingham/nova-attach-many Version ^1.0
dillingham/nova-detail-link Version ^1.0
eminiarts/nova-relationship-selector Version ^1.0
eminiarts/nova-tabs Version ^1.0
epartment/nova-dependency-container Version ^1.2.10
outl1ne/nova-sortable Version ^2.0
rcknr/nova-multiselect-filter Version ^1.3
spatie/laravel-schemaless-attributes Version ^2