Agentic typeface: the words an agent supplies are rendered as flowing light -- luminous streams ride a noise field inside the letterforms only (particles spawn on the glyph mask and respawn when they leave it), drawn with additive long-exposure trails and composited through the text as a mask, with a soft glow halo behind. Reads as a headline made of moving liquid light. Pointer swirls the flow. Honours prefers-reduced-motion (one pre-simulated frame), pauses offscreen, DPR-aware; the words are also emitted as visually-hidden text. Dark backgrounds only -- trails are additive. Sibling of particle_type and living_type. Every option is an enum or a clamped int; text is JSON-encoded into the script with "<" escaped.
| Surface | Note |
|---|---|
| Renders as a dark panel; the words remain as visually-hidden text, the canvas is empty without JavaScript | |
| google-chat | Inline script not supported; renders as a solid panel |
| Field | Type | Required |
|---|---|---|
| text | string (required). The words to set, up to 3 lines separated by "\n", each trimmed to 40 characters. Short and bold reads best. Default "A2UI". | required |
| font | "sans" | "serif" | "mono" | "display" (optional, default "sans"). System font stacks; no webfont is loaded. | optional |
| weight | "regular" | "bold" | "black" (optional, default "black") | optional |
| colors | array of 1-4 "#rrggbb" strings. Default ["#38bdf8","#818cf8","#f472b6"], applied left to right across the words. Invalid entries are dropped. | optional |
| background | "#rrggbb". Default "#070a12". | optional |
| height | integer. Panel height in px, clamped 160-900. | optional |
| interactive | bool. Pointer affects the letters. Default true. | optional |
| density | "low" | "normal" | "high" (optional, default "normal"). Streams per glyph area. | optional |
| speed | "slow" | "normal" | "fast" (optional, default "normal") | optional |
| trail | "short" | "normal" | "long" (optional, default "normal") | optional |
| scale | "fine" | "normal" | "broad" (optional, default "normal"). Swirl size inside the letters. | optional |
| glow | bool. Soft halo behind the letters in the first colour. Default true. | optional |
{
"type": "light_type"
}
{
"identifier": "urn:air:a2uicatalog.ai:atom:light_type",
"displayName": "Light Type",
"type": "application/vnd.a2ui.atom+json",
"url": "https://a2uicatalog.ai/atoms/light_type",
"capabilities": [
"web",
"google-meet-stage",
"google-apps-script-web",
"mcp-apps",
"android"
],
"description": "Agentic typeface: the words an agent supplies are rendered as flowing light -- luminous streams ride a noise field inside the letterforms only (particles spawn on the glyph mask and respawn when they leave it), drawn with additive long-exposure trails and composited through the text as a mask, with a soft glow halo behind. Reads as a headline made of moving liquid light. Pointer swirls the flow. Honours prefers-reduced-motion (one pre-simulated frame), pauses offscreen, DPR-aware; the words are also emitted as visually-hidden text. Dark backgrounds only -- trails are additive. Sibling of particle_type and living_type. Every option is an enum or a clamped int; text is JSON-encoded into the script with \"<\" escaped.",
"representativeQueries": [
"show a agent-supplied words made of flowing light, streams masked to the glyphs",
"agentic typeface: the words an agent supplies are rendered as flowing light -- luminous streams ride",
"render a light type"
]
}
The renderer is an open-source Google Apps Script web app. Deploy your own instance in 4 commands — you own the URL, no dependency on the demo endpoint.
git clone https://github.com/a2uicatalog/a2ui
cd a2ui/apps-script-surface/gas-wired-renderer
clasp push && clasp deploy
Full deploy guide →