Machines of Wonder · RFC #9 · engineering extension

Draw me radio waves broadcasting

Invisible voices. You asked Claude. Glyph drew it — from a compose spec. A lattice tower with a glowing antenna tip and seven concentric pulsing wave-rings.

▸ The prompt
"Draw me radio waves emanating from a broadcast tower. Lattice steel structure, a thin antenna at the top with a bright tip, concentric oval waves expanding outward. Night sky with stars."

— what to say to your AI agent. Claude writes the Glyph compose spec; the compose compiler emits one byte-locked SVG.

A radio broadcast tower at night: a lattice steel triangle with diagonal cross-bracing rising to a single thin antenna mast, a glowing bright tip at the antenna's peak, seven concentric pale-yellow elliptical wave rings expanding outward from the tip with decreasing opacity, a dark blue radial-gradient sky scattered with 100 stars.

One scene, three primitives

RFC #9's defs (gradients + patterns), shapes (silhouette-path, polygon, polyline, ellipse), and accents (glow, starfield, icon) compose the whole picture.

PRIMITIVE 1
ellipse × 7 + pulse

The radio waves

Seven ellipses at the antenna tip, increasing radius from 60 to 420, decreasing opacity from 0.6 to 0.14. Each one carries a pulse loop animation at slightly different periods (3.0 – 4.4 s) so the waves breathe at different tempos.

PRIMITIVE 2
polyline × 32

The lattice

16 X-pattern cross-braces — each X is two polylines. The polylines connect the left and right sides of the tower at sequential heights, producing the classic triangulated steel lattice of broadcast towers.

PRIMITIVE 3
starfield + glow

Sky + antenna tip

100 stars seeded at 31. The antenna tip carries a glow (radius 50, gradient g-tip) — that's the visible signature of the oscillator driving the broadcast. Stars and waves coexist because the whole point is signal-through-noise.

How Glyph drew it

Claude writes the compose JSON; Glyph's compose compiler turns it into byte-identical SVG.

The compose spec JSON · excerpt

{
  "compose": {
    "viewBox": { "width": 800, "height": 800 },
    "theme": { "background": "#020617" },
    "defs": {
      "gradients": [
        { "id": "g-tip", "kind": "radial",
          "cx": "50%", "cy": "50%", "r": "50%",
          "stops": [
            { "offset": "0%",  "color": "#fde68a", "opacity": 1 },
            { "offset": "100%","color": "#fde68a", "opacity": 0 }
          ]
        }
        // ... g-bg
      ]
    },
    "children": [
      // 1. background radial gradient
      // 2. starfield · 100 stars · seed 31
      // 3. ground horizon rect
      // 4. 7 wave ellipses w/ pulse animation
      // 5. glow halo at antenna tip (radius 50)
      // 6. tower silhouette outline
      // 7. 32 lattice cross-brace polylines
      // 8. antenna mast silhouette + tip bulb
      // 9. broadcast label + caption text
    ]
  }
}

Generator script: scripts/gen-showcase-extensions.mjs · fixture: packages/core/__fixtures__/compose/eng-radio.json. View on GitHub.

Glyph compose output SVG

Glyph-rendered draw me radio waves broadcasting, same SVG as the hero stage

Byte-stable across Ubuntu / macOS / Windows × Node 20 / 22. The compose compiler resolves the gradient + pattern defs first, then walks children in z-order.

More Life in Glyph

See the gallery ↗ Bridge Locomotive Antikythera