Package Reference

All packages are published under the @xiboplayer scope on npm.

# Install everything
npm install @xiboplayer/core @xiboplayer/renderer @xiboplayer/schedule \
  @xiboplayer/xmds @xiboplayer/xmr @xiboplayer/cache @xiboplayer/stats \
  @xiboplayer/settings @xiboplayer/utils @xiboplayer/sync @xiboplayer/proxy

# Or individual packages
npm install @xiboplayer/xmds    # just the CMS client
npm install @xiboplayer/cache   # just the offline cache

Overview

PackageDescriptionKey Exports
@xiboplayer/corePlayer orchestration, collection cycle, offline modePlayerCore
@xiboplayer/rendererXLF layout rendering, transitions, actionsRendererLite, LayoutPool
@xiboplayer/scheduleCampaigns, dayparting, interrupts, overlaysScheduleManager, InterruptScheduler
@xiboplayer/xmdsCMS client (SOAP + REST dual transport)XmdsClient, RestClient
@xiboplayer/xmrReal-time push commands via WebSocketXmrWrapper
@xiboplayer/cacheParallel chunk downloads, MD5 verificationStoreClient, DownloadManager
@xiboplayer/statsProof-of-play tracking, log reportingStatsCollector, LogReporter
@xiboplayer/settingsCMS display settings with reactive updatesDisplaySettings
@xiboplayer/cryptoRSA key generation for XMR registrationgenerateKeyPair
@xiboplayer/utilsLogger, EventEmitter, config, fetchWithRetryEventEmitter, Config, CmsApi
@xiboplayer/swService Worker for media cachingSwMediaHandler
@xiboplayer/syncMulti-display video wall synchronizationSyncManager, computeChoreography
@xiboplayer/proxyCORS proxy, PWA server, sync relaycreateProxyApp, startServer
@xiboplayer/pwaComplete browser-based playerPwaPlayer

CMS communication

@xiboplayer/xmds provides two transports with identical API surfaces:

  • XmdsClient (SOAP/XML) — compatible with all CMS versions (v3-v7)
  • RestClient (REST/JSON) — 30% smaller payloads, ETag 304 caching

Protocol auto-detection selects the best transport at startup. Both converge on the same ContentStore mirror paths.

XMDS methods: RegisterDisplay, RequiredFiles, Schedule, GetResource, NotifyStatus, MediaInventory, BlackList, SubmitStats, SubmitScreenShot, SubmitLog

XMR commands: collectNow, screenshot, changeLayout, overlayLayout, revertToSchedule, purgeAll, dataUpdate, triggerWebhook, commandAction, criteriaUpdate

Downloads and caching

@xiboplayer/cache splits large files into 4 parallel 50MB chunks for fast downloads. Features:

  • MD5 verification per chunk
  • Download resume from last successful chunk
  • CMS-configured download time windows
  • Font CSS URL rewriting to local cache paths

Rendering

@xiboplayer/renderer parses XLF (Xibo Layout Format) and renders to DOM:

Widget typeImplementation
Video<video> with HLS.js fallback
Image<img> with scaleType, align/valign
Audio<audio> with visualization overlay
PDFPDF.js canvas (lazy-loaded)
Text/Tickeriframe via GetResource
Web page<iframe src="...">
All CMS widgetsiframe via GetResource

Source