Ir al contenido

Dashboards — introducción

Los dashboards son artifacts colaborativos en tiempo real. Los construís en un editor autenticado y compartís una URL de solo lectura separada — ambas se mantienen sincronizadas sobre un documento Y.js en vivo.

EscenarioFuncionalidades clave
Reportes ejecutivosKPIs, gráficos de tendencia, presets de filtros
Análisis de ventasFunnel de pipeline, leaderboard, drill-down
Monitoreo operacionalMétricas en vivo, auto-refresh, fuentes WebSocket
Analítica de marketingPerformance de campañas, funnel de conversión
Reportes financierosP&L, comparaciones por período
Pantallas de TVModo presentador, ciclo automático, pantalla completa

Usá dashboards cuando necesitás colaboración en tiempo real, filtros interactivos o modo presentador. Para reportes estáticos o embeds simples, un artifact convencional con el JSON store o tables es más sencillo.

Cada dashboard crea dos artifacts que comparten un único documento CRDT Y.js:

ModoURLAcceso
Editorshareout.site/a/{slug}Autenticado; edición completa
Publicadoshareout.site/p/{slug}Compartible; solo lectura, filtros interactivos

Los cambios en el editor se propagan a la vista publicada en tiempo real (latencia típica 50–200 ms). El viewer publicado puede aplicar filtros y seguir a un presentador, pero no puede modificar la definición de widgets ni las fuentes de datos.

En workspaces de Teams, ambas URLs también están disponibles bajo el subdominio del workspace: {workspace}.shareout.site/a/{slug} y {workspace}.shareout.site/p/{slug}.

const sdk = new ShareOut();
const result = await sdk.dashboards.create({
title: 'Sales Dashboard',
visibility: 'public',
});
console.log(result.editorUrl); // shareout.site/a/sales-dashboard
console.log(result.publishedUrl); // shareout.site/p/sales-dashboard

Ambos artifacts se crean automáticamente. También se devuelven editorArtifactId y publishedArtifactId por si los necesitás para llamadas a la API.

ValorQuién puede ver la URL publicada
privateSolo colaboradores; requiere autenticación
workspaceCualquier miembro del workspace del artifact (Teams)
publicCualquiera en internet con el enlace; aparece en la homepage del workspace (Teams)

Podés cambiar la visibilidad en cualquier momento:

const dashboard = await sdk.dashboards.open('sales-dashboard');
dashboard.publish.setVisibility('public');
dashboard.publish.unpublish(); // la URL publicada devuelve 404
dashboard.publish.republish(); // restaurar

Los dashboards públicos son embebibles por defecto:

<iframe
src="https://shareout.site/embed/my-dashboard/"
width="100%"
height="600"
frameborder="0"
></iframe>

Restringí orígenes o deshabilitá el embed vía la API de artifacts (campos embed_allowed y embed_origins en PATCH /v1/artifacts/{id}).

Los dashboards se apoyan en primitivas existentes del SDK:

Feature del SDKRol en dashboards
sdk.realtime()Documento Y.js subyacente
sdk.blobsAlmacenamiento de imágenes para widgets
sdk.commentsHilos por widget (contextId: 'widget-{id}')
sdk.table()Tipo de fuente de datos shareout para widgets

Consultá Widgets y gráficos para tipos de widgets y layout, y API del SDK para la referencia completa de métodos.