Ir al contenido

Dashboards — introducción

Los dashboards son artefactos 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.

Escenario Funcionalidades clave
Reportes ejecutivos KPIs, gráficos de tendencia, presets de filtros
Análisis de ventas Funnel de pipeline, leaderboard, drill-down
Monitoreo operacional Métricas en vivo, auto-refresh, fuentes WebSocket
Analítica de marketing Performance de campañas, funnel de conversión
Reportes financieros P&L, comparaciones por período
Pantallas de TV Modo 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 artefacto convencional con el JSON store o tables es más sencillo.

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

Modo URL Acceso
Editor shareout.site/a/{slug} Autenticado; edición completa
Publicado shareout.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 artefactos se crean automáticamente. También se devuelven editorArtifactId y publishedArtifactId por si los necesitás para llamadas a la API.

Valor Quién puede ver la URL publicada
private Solo colaboradores; requiere autenticación
workspace Cualquier miembro del workspace del artefacto (Teams)
public Cualquiera 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 artefactos (campos embed_allowed y embed_origins en PATCH /v1/artifacts/{id}).

Los dashboards se apoyan en primitivas existentes del SDK:

Feature del SDK Rol en dashboards
sdk.realtime() Documento Y.js subyacente
sdk.blobs Almacenamiento de imágenes para widgets
sdk.comments Hilos 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.