Drag, resize, snap
Cards snap into the nearest gap. Drop one on another to stack it in front or behind. Layouts feel intentional without pixel-pushing.
Pick a model, drop a chart on the canvas, and publish a live page in a few minutes. No hardcoded widgets. Data comes from the records already in your app.
Create a board, bind a bar chart to a real model, add a KPI card, and publish the page.
Build a live dashboard in under 2 minutes
More of the canvas
No separate data warehouse. Charts read the Eloquent models that already hold your records.
Cards snap into the nearest gap. Drop one on another to stack it in front or behind. Layouts feel intentional without pixel-pushing.
KPI card, table, line, bar, column, pie, donut, stacked, funnel, and radial gauge. Pick the visual that matches the question.
Bind category and measure fields from Eloquent models, including related names. Row count is available when you just need a total.
Optional anonymous access at /visual-dashboards/{id}/{slug}. Signed-in viewers with the right role can always open it.
Optional Spatie or Shield allowlist for signed-in viewing, including per dashlet. Works fine if neither package is installed.
Visual Dashboards opens the dashboard list. No extra clutter in the panel navigation.
Require the package and migrate:
composer require spiggle/visual-dashboards php artisan migrate
Register the plugin on your Filament panel:
use Spiggle\VisualDashboards\Filament\VisualDashboardsPlugin; $panel->plugin(VisualDashboardsPlugin::make());
Check the install:
php artisan visual-dashboards:verify
Open Visual Dashboards, name a new board, and open the canvas.
Pick a chart. Bars work well for comparing categories. Bind the model, category field, and measure.
Drop a KPI card the same way when the page needs a single number at the top.
Drag by the header. Cards snap into gaps. Drop one on another to stack it.
Turn on Public link in dashboard settings. Anyone with the URL can view it; signed-in allowed roles can always open it.
Copy the share URL. The page stays live against the records already in your app.
Custom fields on any Eloquent model — no migrations per field.
View →Public forms, submissions, and CSV export.
View →Event triggers you design in the panel.
View →Deployment checks, queue and cron health, and production diagnostics.
View →Spiggle builds custom Filament panels and plugins. Whether you need a modified package or something new, get in touch.