DEMON example apps

June 23, 2026 ยท View on GitHub

Small frontend examples and creative interfaces for DEMON, the realtime music generation engine.

These apps are plain static files. They do not vendor the DEMON browser SDK; when mounted by a DEMON backend they load the shared SDK from /sdk/demon-client.js.

Apps

AppPathRouteWhat it shows
DEMON Tidesapps/tides/tidesAudio-reactive flow-field visualizer that doubles as an XY control surface.
DEMON Summonapps/summon/arpHand-tracking control surface for a live DEMON remix session.
DEMON Bloomapps/bloom/bloomReaction-diffusion organism that maps cursor chemistry to DEMON remix controls.
DEMON Orreryapps/orrery/orreryCelestial-mechanics control surface rendered from the live DEMON manifests.
DEMON Watercolorapps/watercolor/watercolorWebGL2 watercolor painting surface whose simulated pigment drives DEMON knobs.
DEMON Watercolor Codexapps/watercolor-codex/watercolor-codexCompact watercolor control panel for fixture-driven DEMON sessions.
DEMON Face Warpapps/face-warp/face-warpWebcam face-warp interface with kick-reactive DEMON audio controls.
DEMON Tidesapps/tides/tidesAudio-reactive flow-field visualizer that doubles as an XY control surface.
DEMON Summonapps/summon/arpHand-tracking control surface for a live DEMON remix session.
DEMON Visageapps/visage/visageFace-tracking control surface: facial expressions drive a live DEMON remix.

Run

From a DEMON checkout:

uv run python -u -m demos.realtime_motion_graph_web.run `
  --demo C:\path\to\demon-example-apps\apps\tides `
  --demo C:\path\to\demon-example-apps\apps\summon `
  --demo C:\path\to\demon-example-apps\apps\bloom `
  --demo C:\path\to\demon-example-apps\apps\orrery `
  --demo C:\path\to\demon-example-apps\apps\watercolor `
  --demo C:\path\to\demon-example-apps\apps\watercolor-codex `
  --demo C:\path\to\demon-example-apps\apps\face-warp

The backend prints direct static demo URLs at startup.

You can also mount one app at a time:

uv run python -u -m demos.realtime_motion_graph_web.run --demo C:\path\to\demon-example-apps\apps\tides
uv run python -u -m demos.realtime_motion_graph_web.run --demo C:\path\to\demon-example-apps\apps\summon
uv run python -u -m demos.realtime_motion_graph_web.run --demo C:\path\to\demon-example-apps\apps\bloom
uv run python -u -m demos.realtime_motion_graph_web.run --demo C:\path\to\demon-example-apps\apps\orrery
uv run python -u -m demos.realtime_motion_graph_web.run --demo C:\path\to\demon-example-apps\apps\watercolor
uv run python -u -m demos.realtime_motion_graph_web.run --demo C:\path\to\demon-example-apps\apps\watercolor-codex
uv run python -u -m demos.realtime_motion_graph_web.run --demo C:\path\to\demon-example-apps\apps\face-warp

Structure

Each app directory contains a demon.demo.json manifest:

{
  "route": "/tides",
  "entry": "index.html"
}

The DEMON backend serves the app as static files at route and serves the shared browser SDK at /sdk/.

Catalog

examples.json mirrors this README in a small structured format so docs, websites, and agents can discover the examples without scraping markdown.