Source profileQuality 90/100

event4u-app/agent-config/src/skills/dashboard-design/SKILL.md

dashboard-design

Use when designing monitoring dashboards — visualization selection, layout principles, observability strategies (RED/USE/Golden Signals), and data storytelling.

Source repository stars
7
Declared platforms
0
Static risk flags
1
Last source update
2026-08-04
Source checked
2026-08-04

Decision brief

What it does—and where it fits

Use when designing monitoring dashboards — visualization selection, layout principles, observability strategies (RED/USE/Golden Signals), and data storytelling.

Best for

  • Writing Grafana queries/JSON (use grafana skill)
  • Building Livewire components (use livewire skill)

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/dashboard-design"
Safe inspection promptEditorial

Inspect the Agent Skill "dashboard-design" from https://github.com/event4u-app/agent-config/blob/798a65522c7a73b90526641d6d1589fe0937cb5f/src/skills/dashboard-design/SKILL.md at commit 798a65522c7a73b90526641d6d1589fe0937cb5f. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Procedure: Design a dashboard

    1. Inspect the data sources — Identify which signals already exist (logs, metrics, app queries) and where they live (Grafana / Loki / app DB) before designing a new panel. 2. Pick the surface — Use the decision tables below to choose Grafana, app dashboard, or embed; document au…

    Inspect the data sources — Identify which signals already exist (logs, metrics, app queries) and where they live (Grafana / Loki / app DB) before designing a new panel.Pick the surface — Use the decision tables below to choose Grafana, app dashboard, or embed; document audience and refresh cadence.Draft the layout — Sketch panels, choose visualization per signal (RED / USE / Golden Signals), define filters and thresholds.
  2. 02

    When to use

    Use when designing a new Grafana or admin dashboard, deciding what goes where (Grafana vs. app), or embedding Grafana panels in the Laravel app.

    Writing Grafana queries/JSON (use grafana skill)Building Livewire components (use livewire skill)Use when designing a new Grafana or admin dashboard, deciding what goes where (Grafana vs. app), or embedding Grafana panels in the Laravel app.
  3. 03

    Decision: What goes where?

    Review the “Decision: What goes where?” section in the pinned source before continuing.

    Review and apply the “Decision: What goes where?” source section.
  4. 04

    Grafana Embedding

    Config required: allowembedding = true, cookiesamesite = none (cross-origin), anonymous access/auth proxy, tenant variables via URL params, &theme=light|dark.

    Config required: allowembedding = true, cookiesamesite = none (cross-origin), anonymous access/auth proxy, tenant variables via URL params, &theme=light|dark.
  5. 05

    Admin Dashboard Design (Laravel)

    wire:poll.30s for auto-refresh

    wire:poll.30s for auto-refreshwire:init for lazy loading expensive queries$dispatch('refresh-stats') for cross-widget updates

Permission review

Static risk signals and limitations

Network access

medium · line 47

The documentation includes network, browsing, or remote request actions.

src="https://grafana.example.com/d-solo/{dashboard-uid}/{panel-id}?orgId=1&from=now-24h&to=now&var-fqdn={{ $customer->fqdn }}&theme=light"

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score90/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars7SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
event4u-app/agent-config
Skill path
src/skills/dashboard-design/SKILL.md
Commit
798a65522c7a73b90526641d6d1589fe0937cb5f
License
MIT
Collected
2026-08-04
Default branch
main
View the original SKILL.md

dashboard-design

When to use

Use when designing a new Grafana or admin dashboard, deciding what goes where (Grafana vs. app), or embedding Grafana panels in the Laravel app.

Do NOT use when:

  • Writing Grafana queries/JSON (use grafana skill)
  • Building Livewire components (use livewire skill)

Procedure: Design a dashboard

  1. Inspect the data sources — Identify which signals already exist (logs, metrics, app queries) and where they live (Grafana / Loki / app DB) before designing a new panel.
  2. Pick the surface — Use the decision tables below to choose Grafana, app dashboard, or embed; document audience and refresh cadence.
  3. Draft the layout — Sketch panels, choose visualization per signal (RED / USE / Golden Signals), define filters and thresholds. Ground the chart-type choice in the adopted data-viz corpus instead of memory: ./scripts-run <skills-root>/corpus-grounding/scripts/ground search --manifest <skills-root>/design-intelligence/data/manifest.json --domain chart "<data shape>" returns the best chart type, when-NOT-to-use, data-volume threshold, a11y grade + colorblind fallback, and a library recommendation per row (see design-intelligence).
  4. Implement and verify — Build the dashboard, load realistic data, and confirm every panel answers a named question for the named audience.
DomainTechnologyPurpose
MonitoringGrafana + LokiInfrastructure health, error rates, logs, SLAs
Business/AdminLaravel + Livewire + TailwindCustomer KPIs, import stats, usage metrics

Decision: What goes where?

DataWhere
Server metrics, error rates, latencyGrafana
Log analysis, tracesGrafana (Loki)
SLA/uptime trackingGrafana
Customer-facing KPIsApp dashboard
Import statistics per customerApp dashboard (+ Grafana embed)
User activity, usage metricsApp dashboard

Grafana Embedding

<iframe
  src="https://grafana.example.com/d-solo/{dashboard-uid}/{panel-id}?orgId=1&from=now-24h&to=now&var-fqdn={{ $customer->fqdn }}&theme=light"
  width="100%" height="300" frameborder="0"
></iframe>

Config required: allow_embedding = true, cookie_samesite = none (cross-origin), anonymous access/auth proxy, tenant variables via URL params, &theme=light|dark.

ScenarioApproach
Quick KPI overviewEmbed Grafana stat panels
Detailed investigationLink to full Grafana dashboard
Customer-facingBuild in app (full UX control)

Admin Dashboard Design (Laravel)

Widget types

WidgetImplementation
Stat cardLivewire + Tailwind
Trend cardStat + sparkline (Chart.js / Grafana embed)
Table widgetLivewire table with pagination
Chart widgetChart.js / Grafana embed
Status listBlade component with color indicators
Activity feedLivewire with polling/streaming

Layout: F-pattern

┌──────────┬──────────┬──────────┬──────────┐
│ Stat     │ Stat     │ Stat     │ Stat     │  ← KPI row
├──────────┴──────────┼──────────┴──────────┤
│ Chart (trend)       │ Chart (breakdown)   │  ← Viz row
├─────────────────────┼─────────────────────┤
│ Table (recent)      │ Activity feed       │  ← Detail row
└─────────────────────┴─────────────────────┘

Livewire patterns

  • wire:poll.30s for auto-refresh
  • wire:init for lazy loading expensive queries
  • $dispatch('refresh-stats') for cross-widget updates
  • Cache expensive aggregations, refresh on schedule

Validate

  • Verify each panel answers exactly one question.
  • Confirm time ranges are explicit, not "last X" without context.
  • Check that critical KPIs are visible without scrolling.
  • Ensure no chart mixes unrelated metrics on the same axis.

Output format

  1. Dashboard layout with panel placement and visualization types
  2. Data source mapping — which metrics/queries feed each panel
  3. Alerting thresholds where applicable

Gotcha

  • Max 8 panels per dashboard — cognitive overload kills usability.
  • Simple table often beats fancy visualization.
  • Always scope to customer/tenant — no unfiltered admin views.
  • Always define time range explicitly.

Do NOT

  • Do NOT create dashboards with more than 8 panels — cognitive overload.
  • Do NOT mix ops metrics with business KPIs on the same dashboard.
  • Do NOT show admin data without tenant scoping.

Anti-slop

Dashboards have their own signature tell: the hero-metric template (giant number + small label + a row of stats + gradient) is L1 in docs/guidelines/design-antipatterns.md. Pull the catalog and check L1–L3 (hero-metric, identical-card grids, monotonous spacing) before finalizing the layout — a dashboard is product-mode (docs/guidelines/design-modes.md): design serves the task, so favour data density and earned familiarity over decorative variance.

Auto-trigger keywords

  • dashboard
  • monitoring dashboard
  • visualization
  • KPI
  • metrics display

Alternatives

Compare before choosing

Computed 10042,968

coreyhaines31/marketingskills

ab-testing

When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program

Computed 10042,968

coreyhaines31/marketingskills

churn-prevention

When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or implement retention strategies. Also use when the user mentions 'churn,' 'cancel flow,' 'offboarding,' 'save offer,' 'dunning,' 'failed payment recovery,' 'win-back,' 'retention,' 'exit survey,' 'pause subscription,' 'involuntary churn,' 'people keep canceling,' 'churn rate is too high,' 'how do I keep users,' or 'customers are leaving.' Use this whenever someone is losing subscribers o

Computed 100165

JasonColapietro/suede-creator-skills

suede-ab-testing

Suede-owned experimentation discipline for hypotheses, sample sizing, test duration, significance, and repeatable experiment programs. Use when comparing variants, deciding whether a result is reliable, or building an experiment backlog and cadence. NOT FOR: analytics instrumentation (use suede-analytics), post-click conversion diagnosis (use suede-site-alchemy), or writing the variant copy itself (use suede-copy).

Computed 1007

narrative-io/narrative-skills-marketplace

design-analysis

Translate a fuzzy analytical question into a rigorous investigation plan. Interrogates the ask, grounds the plan in the available data dictionary, applies analytical best practices, and produces a structured brief of query specifications for a downstream query-writing skill. Plans, does not write SQL. Use when: "why did X drop", "is there a relationship between A and B", "who are our highest-value customers", "what's driving the change in Y", "investigate this trend", "design an analysis for", "