# plugin-dashboard

`@fayz-ai/plugin-dashboard` · preview · Superfície visual

A SaaS home page is never owned by one team. Bookings wants today's agenda, finance wants revenue, the shop wants top products. The usual outcome is one god-component that imports everything and rots. This plugin kills that. It provides the / home surface and a widget registry: every plugin contributes its own dashboardWidgets, and the dashboard renders, orders, and lays them out into a single…

## Visão geral

A tela inicial do app. Não tem dados próprios nem migrations: é uma **superfície visual** que agrega widgets do registro — KPIs, seções customizadas, checklist de onboarding e os widgets que outros plugins (CRM, financeiro, estoque) contribuem para a home.

Monta a rota `/` e renderiza o `DashboardCanvas`. É configurável por `metrics`, `sections`, `onboardingSteps`, `customWidgets` e `layout`; dá para desligar o cabeçalho (`showHeader`) ou o menu "Customize" (`customizable`) para uma home B2C limpa, e compartilhar um controle de intervalo de tempo (`range`) entre os widgets.

Para IA, expõe `getKpiSummary`. Status **preview / superfície visual** — a API ainda pode mudar.

## Quando usar

- Montar a home com KPIs e um checklist de primeiros passos.
- Reunir num só lugar os widgets que os outros plugins expõem.
- Entregar uma home B2C enxuta, sem o chrome de customização.

## Ficha técnica

- **Pacote:** `@fayz-ai/plugin-dashboard`
- **Versão:** 0.1.6
- **Status:** preview
- **Capability:** Superfície visual
- **Tipo de produto:** Gestão (Admin/SaaS)
- **Canal stable:** `^0.1.6`
- **Migrations:** nenhuma
- **Factory:** `createDashboardPlugin()`

## Modelo de dados

Sem tabelas próprias — usa a biblioteca core / archetype (mesma regra: `tenant_id` + RLS).

## Tools de IA

| id | modo | descrição |
| --- | --- | --- |
| `dashboard.kpi-summary` | read | Returns a summary of all KPI metrics for the current dashboard, including trends and comparisons. |

## Integrações

Sem conector hospedado — provedores externos via spine de conectores (`@fayz-ai/core`).

## Integrar

Adicione o plugin em `surfaces.admin.plugins` do `app.manifest.json` e rode o doctor:

```json
{ "surfaces": { "admin": { "plugins": [ { "id": "dashboard", "enabled": true } ] } } }
```

```bash
npx fayz doctor
```
