Skip to content

The example apps

All 26 bundled apps with profile and special feature, and the three references clock (widget only), weather (fetcher), pharmacies-on-duty (resources and job).

7 minute readApps SDKUpdated: 10/25/2026

On this page

Before you start

For
Developers who look for the most similar app for a project or want to know which app carries which building block.
Prerequisite
none. The user’s view of each app is in the handbook.

The bundled apps are the real consumers of the contract described in this area. The first table sorts each app by profile, backend building blocks, resources, and signature. The second lists category, class, and the group of terms. Three apps are the references that a new app takes its cue from.

Three profiles, three references

Profile What is added Reference Pages
Widget only A widget with noResolver: true, runtime and authoring bundles, no backend, no resources, no app database. clock — the smallest complete app: one manifest, one widget, two bundles. Widget, configuration, and preview
Plus fetcher A backend with @WidgetResolver and @Fetcher against an external source, no app database. weather — the city lives in the widget configuration, and the fetcher loads current conditions and forecast into the cache. Backend: resolvers, fetchers, and jobs
Plus resources and database Resource types that the organization maintains in the portal, a schema of its own apps_<id>, and a @JobHandler if needed. pharmacies-on-duty — uses every building block of the SDK: resolver, fetcher, a job every 30 minutes, two resources, legal, signing: 'required'. The manifest, Data access, permissions, and terms

The levels are not strictly cumulative: menu-board has resources and a schema of its own but fetches nothing from the network. “External source” and “own data” are two independent building blocks. pharmacies-on-duty is the one app that has both. A new app clones the structure of the most similar reference.

All apps

The five brand apps bbc, bild, ndr, spiegel, and deutschlandfunk inherit the widget, backend, and presentation from tagesschau. They carry only a manifest of their own and their identity (identifier, label, accent color, theme, font). The gate apps onedrive and video-wall bring no widget.

App Widget Profile Backend building blocks Resources / database Signature Special feature
clock (“Clock”) clock widget only — — optional Reference for the “widget only” profile. The time zone can be overridden per instance.
webpage (“Web page”) iframe widget only — — optional The only app that retrieves an external address without a backend: the player loads the page itself.
notice-board (“Notice board”) rich-text widget only — — optional Safe authoring markup: a Markdown subset becomes a typed block model, never HTML text.
countdown (“Countdown”) countdown widget only — — optional Counts down to a target time. The target, units, and expired text are set in the configuration.
countup (“Day Counter”) countup widget only — — optional Counts up since an event and highlights milestones.
world-clock (“World Clock”) world-clock widget only — — optional Several time zones side by side as a list of equal-ranking tiles.
word-clock (“Word Clock”) word-clock widget only — — optional Time as a sentence instead of a number, grid display with language selection.
ticker (“Scrolling Text”) ticker widget only — — optional The only app with continuous motion. On frozen surfaces it shows a still image of the first item.
qr-code (“QR Code”) qr-code widget only — — optional Generates the QR matrix in the bundle (address, Wi-Fi, vCard, free text).
youtube (“YouTube”) youtube widget only — — optional Embeds videos without a tracking cookie before playback.
stream (“Live stream”) stream widget only — — optional Ships an HLS player in the bundle so that browsers without native HLS playback can stream as well.
embed (“Embed”) embed widget only — — optional Renders an HTML fragment in an isolated frame without access to the player page.
menu-board (“Menu board”) menu-board plus resources and database @WidgetResolver 1 resource (cards), schema apps_menu_board optional Menu cards as a resource of the organization, and the board picks one card. The snapshot’s validity ends at the next switch (5 a.m., cut-off date, time window of a category).
weather (“Weather”) weather plus fetcher @WidgetResolver, @Fetcher — optional Reference for the fetcher profile. Two weather providers, the second as a fallback source.
rss (“RSS feed”) rss plus fetcher @WidgetResolver, @Fetcher — optional Free-form feed address from the configuration. The fetch runs through APP_GUARDED_FETCH, as with calendar and tagesschau.
tagesschau (“Tagesschau”) tagesschau plus fetcher @WidgetResolver, @Fetcher — optional Curated sources instead of a free-form address. Basis of the five brand apps.
calendar (“Calendar”) calendar plus fetcher @WidgetResolver, @Fetcher 1 resource (calendars) in the file storage of the app optional A custom ICS reader for calendar subscriptions. It documents the limits of its recurrence rules.
bbc, bild, ndr, spiegel, deutschlandfunk each of the same name plus fetcher (inherited) inherited from tagesschau — optional Brand apps: own manifest and own look and feel, no presentation or backend code of their own.
pharmacies-on-duty (“Pharmacies on duty”) pharmacies-on-duty-display plus resources and database @WidgetResolver, @Fetcher, @JobHandler (*/30 * * * *) 2 resources (locations, schedules), schema apps_pharmacies_on_duty required The most extensive app and the reference for full-data apps. vertical: 'pharmacy'. The only app with signing: 'required'.
opening-hours (“Opening hours”) opening-hours resolver without fetcher @WidgetResolver — optional Reads the opening hours at the location (player-location, location-hours) and computes the state in the display software. Reference for per-shape templates, following the weather app.
onedrive (“OneDrive”) — gate app — — optional unlocks: ['library-places'], connects: ['microsoft-graph']. No runtime bundle and no authoring bundle.
video-wall (“Video wall”) — gate app — — optional unlocks: ['video-walls']. The feature lives in the platform, and the app is its key.

Only the twelve apps with a backend (the seven with a backend of their own and the five brand apps) run through the app loader at startup. It does not know the twelve widget apps and the two gate apps. No app is startup-critical: if one fails to load, the platform logs it and starts without it.

Category, class, and terms

category is the platform’s single ordering axis: it determines the filter in the store and the section of the apps in the scene editor’s palette. tier is the class: standard carries no badge in the store, pro carries the Pro badge, and addon carries the Add-on badge and is booked as an add-on. How an app draws its content within its frame is decided by a configuration field, for example four layout values for pharmacies-on-duty and three composition values for clock.

App category tier legal group
clock zeit standard —
countdown zeit standard —
countup zeit standard —
world-clock zeit standard —
word-clock zeit standard —
weather information standard wetter
rss information pro nachrichten
tagesschau information pro nachrichten
bbc, bild, ndr, spiegel, deutschlandfunk information pro nachrichten
calendar information pro verbindungen
webpage web-video standard fremdinhalte
youtube web-video standard fremdinhalte
stream web-video standard fremdinhalte
embed web-video standard fremdinhalte
notice-board gestaltung pro eigene-inhalte
ticker gestaltung standard eigene-inhalte
qr-code gestaltung standard eigene-inhalte
pharmacies-on-duty geschaeft pro notdienst
opening-hours geschaeft pro oeffnungszeiten
menu-board geschaeft pro eigene-inhalte
onedrive geschaeft standard verbindungen
video-wall geschaeft addon —

Apps without a tier in the manifest carry the default standard. What the preview variants of an app do in the store is covered under Widget, configuration, and preview.

What is not covered here

Text, image, video, shape, graphic, and document are not apps but core widgets: they have the reserved identifier core, do not appear in the store, need no installation, and go through neither release nor signing. Anyone who builds a widget that gets by without a data source, without permissions, and without a product promise of its own is probably building a basic building block and not an app.

The user’s view of each app (what it shows, how it is set up, which terms it brings) is in the handbook: Apps in the handbook.