Skip to content

Widget Plugin Architecture

Zenso widgets are authorable using standard, approachable web technologies: HTML, CSS, and the LiquidJS template engine.

Instead of running a heavy JavaScript browser engine on the low-power microcontroller, widgets are rendered server-side. The renderer populates the Liquid template with live data, applies responsive CSS, and rasterizes the canvas into an optimized multi-color e-paper bitmap.

A valid Zenso plugin contains the following core files:

my-zenso-widget/
├── manifest.json # Metadata, configuration schema, and data sources
├── index.liquid # Visual template with Liquid placeholders
├── style.css # Scoped CSS stylesheet
└── mock/ # Sample mock data for local development
└── plugin.json

Widgets do not handle raw networking themselves. Instead, you declare required data sources (e.g. image URLs, iCal feeds) in the manifest, and the Zenso server securely fetches and passes the data into your Liquid template.