Widget gallery¶
The 30 widgets that ship with Tesserae. Each is a drop-a-folder widget under plugins/<id>/; drop your own in and it shows up in the editor's picker. Want to build one? See Build a widget with AI.
Stability tiers
Stable = backed by an official, documented API. Best-effort = undocumented but long-lived endpoint. Fragile = scraping or a soft policy, convenience only. Local = computed on the host, no upstream to break. See Screens & compatibility for the hardware side.
Weather¶
-
Weather, Forecast ·
weather_forecast
5-day forecast as a row of theme-aware cards: day name, condition icon, high / low temps, and rain probability. Data from Open-Meteo (no API key).
Sizes:
smmdlg· Tier: - -
Weather, Hourly ·
weather_hourly
Hourly temperature line with a shaded area + condition-icon strip across the top. Defaults to the next 12 hours; configurable to 24 or 48. Data from Open-Meteo (no API key).
Sizes:
xssmmdlg· Tier: - -
Weather, Now ·
weather_now
Current conditions plus feels-like, humidity, wind, UV and sun times. Data from Open-Meteo (no API key required).
Sizes:
xssmmdlg· Tier: - -
Weather, Scenic ·
weather_now_scenic
Screenshot pending, run
python scripts/capture_widget_shots.py.Current weather as a pill card with weather-and-time-of-day theming. Uses the extended palette opt-in so soft gradients (sunset, night sky) render on 7-colour e-ink panels via the renderer's dither pass. Data from Open-Meteo (no API key).
Sizes:
smmdlg· Tier: -
Clocks & time¶
-
Clock, Analog ·
clock_analog
Analog clock face. Pure SVG, no network. Five face styles, pick the one that suits the rest of your dashboard.
Sizes:
xssmmdlg· Tier: Local -
Clock, Sunrise / Sunset ·
clock_sunrise_sunset
Today's sunrise, sunset, golden hour, and day length for a chosen lat/lon. The hero shows a sun-arc visualisation with the current position marked. Data from Open-Meteo (no key).
Sizes:
smmdlg· Tier: - -
Clock, Word ·
clock_word
Word clock, reads the time as English text, rounded to the nearest five minutes ('Twenty past three'). Pure client-side, ticks every 30 seconds.
Sizes:
xssmmdlg· Tier: Local
Calendar¶
-
Calendar, Day ·
calendar_day
Today's agenda Reads from feeds configured in Plugins → Calendar Feeds; each feed's colour drives the stripe / marker / fill colour.
Sizes:
xssmmdlg· Tier: - -
Calendar, Month ·
calendar_month
Month-grid view Reads from feeds configured in Plugins → Calendar Feeds; each feed's colour drives the bar / dot / stripe colour.
Sizes:
mdlg· Tier: - -
Calendar, Week ·
calendar_week
Seven-day strip Each event's colour comes from its feed (Plugins → Calendar Feeds).
Sizes:
smmdlg· Tier: -
News & feeds¶
-
News, Hacker News ·
news_hacker_news
Top / new / best / show / ask stories from Hacker News. Uses the free Firebase API (no auth, no key). Click-through opens the story; the lightbox doesn't apply.
Sizes:
smmdlg· Tier: - -
News, Reddit ·
news_reddit
Top posts from a subreddit using the free .json endpoint (no API key, no OAuth). Pick the subreddit and time window per cell.
Sizes:
smmdlg· Tier: - -
News, RSS / Atom ·
news_rss
Latest N headlines from any RSS 2.0 or Atom 1.0 feed. Paste a feed URL; the widget parses both formats with the stdlib XML parser (no extra deps).
Sizes:
smmdlg· Tier: - -
News, Wikipedia On This Day ·
news_wikipedia_otd
Wikipedia 'On this day', featured historical events for today's date. Uses the free Wikimedia REST API (no key).
Sizes:
smmdlg· Tier: -
Home Assistant¶
-
Home Assistant, Batteries ·
ha_battery
Auto-discovered battery levels across every Home Assistant entity with device_class=battery, sorted lowest-first. Picks up phones, sensors, vacuums, remotes, anything HA already exposes as a battery, and flags low/critical against per-cell thresholds.
Sizes:
smmdlg· Tier: Local -
Home Assistant, Camera ·
ha_camera
Snapshot from one or more Home Assistant camera.* entities. Pulls each entity's entity_picture via HA's REST API and renders it as a still frame, perfect for a door cam, garden cam, or 2×2 grid of indoor cameras on an e-ink display. Multi-camera grids auto-fit; every tile carries a corner timestamp chip and a motion pip when relevant.
Sizes:
smmdlg· Tier: - -
Home Assistant, Climate ·
ha_climate
One or more Home Assistant climate / thermostat entities Each entity tints by what the thermostat is doing right now (heating / cooling / idle). Requires the Home Assistant Core plugin.
Sizes:
smmdlg· Tier: - -
Home Assistant, Energy ·
ha_energy
Live solar / grid / battery / house-consumption snapshot from your HA energy dashboard, with today's totals and a 24-hour sparkline. Wires to the same sensor.* entities you've already configured under HA's Energy panel.
Sizes:
smmdlg· Tier: Local -
Home Assistant, Entities ·
ha_entities
A status grid of several Home Assistant entities. Each row tints by its state (on / off / other), leads with a device-class-aware Phosphor glyph (temperature → thermometer, CO₂ → wind, motion → person walking, …), and shows its current value. Rows that changed within the last 10 minutes pick up an accent-4 wash + a 'just now' / 'Nm ago' badge.
Sizes:
smmdlg· Tier: - -
Home Assistant, History ·
ha_history
A numeric Home Assistant sensor over time. Pairs the current value + trend arrow + min/max with a Chart.js line chart, optional threshold horizontal line, min/max marker dots + labels on the curve, and an averaged hourly-profile ghost overlay for long windows. Requires the Home Assistant Core plugin.
Sizes:
smmdlg· Tier: - -
Home Assistant, Lights ·
ha_lights
An at-a-glance overview of a room (or whole-house) set of light.* entities: which are on, how bright, what colour, and what share of the house is currently lit. Each row carries a brightness mini-bar tinted by the light's actual colour-temperature (warm-white to cool-white) or RGB hue, plus a swatch dot for the colour itself. Reads from your existing Home Assistant install via the Core plugin.
Sizes:
smmdlg· Tier: Local -
Home Assistant, Locks & Doors ·
ha_locks
A security-focused overview of every lock.* entity plus door / window / garage / opening binary_sensors. Stateful kind glyphs (ph-lock ↔ ph-lock-open, ph-door ↔ ph-door-open, etc.) communicate state via icon rather than text colour alone; unsecured rows wear a terracotta wash + an 'unsecured for Xm' timer chip. Auto-discovers entities, nothing to configure beyond the label and which kinds of openings to include.
Sizes:
smmdlg· Tier: Local -
Home Assistant, Media ·
ha_media
Now-playing tile for a Home Assistant media_player entity, title, artist, album, album art, progress bar with elapsed / remaining stamps, and a track-deterministic SVG waveform glyph. A blurred copy of the album art bleeds behind the body so the cell picks up the album's palette. Requires the Home Assistant Core plugin.
Sizes:
smmdlg· Tier: - -
Home Assistant, Sensor ·
ha_sensor
One or more Home Assistant entities as bold value blocks. A single entity fills the cell as a hero number with a trend arrow + 24h sparkline beneath; several lay out as a list with per-row trend + hairline sparkline. Lead glyph picks up the device-class (temperature → thermometer, CO₂ → wind, current → wave-sine, money → coin, etc.). Requires the Home Assistant Core plugin.
Sizes:
xssmmdlg· Tier: - -
Home Assistant, Todo ·
ha_todo
Items from a Home Assistant todo list, built-in shopping list, Google Tasks, Microsoft To-Do, CalDAV, anything exposed as a todo.* entity. Lead with the items needing action; show due dates when the integration sets them. Requires HA 2024.5+ (the todo.get_items service with return_response). Requires the Home Assistant Core plugin.
Sizes:
smmdlg· Tier: - -
Home Assistant, Zones ·
ha_zones
Who's home, who's away, auto-discovers every person.* entity in Home Assistant. Each row leads with the person's avatar (HA profile picture, or a coloured-initials circle keyed to their name when there's no picture) and right-aligns a zone-glyph (briefcase for work, graduation-cap for school, barbell for gym, etc.) + the zone label. One get_states call covers the whole household.
Sizes:
smmdlg· Tier: Local
Pictures¶
-
Picture, NASA APOD ·
picture_apod
NASA's Astronomy Picture of the Day, full bleed. Walks back day-by-day past video entries so the cell always shows an image. Uses DEMO_KEY by default; paste your own key at https://api.nasa.gov for a higher rate limit.
Sizes:
smmdlg· Tier: - -
Picture, Gallery ·
picture_gallery
Folder-based image rotation, full bleed. Manage folders + uploads at Plugins → Gallery. Supports internal folders (uploaded to the appliance) and external pointers to any directory on the host. Optional orientation filter + random or sequential rotation.
Sizes:
smmdlg· Tier: Local
Productivity¶
Web¶
-
Webpage ·
webpage
Embed an external URL in a cell. The composer captures whatever the iframe renders, handy for status pages, public dashboards, or any site that doesn't deny embedding. Same headless-render path as the Send tab is used when the panel renders. Sites that set X-Frame-Options:DENY or strict CSP cannot be embedded.
Sizes:
smmdlg· Tier: -




























