Oscilla Documentation
This documentation describes the cue system, animation model, authoring workflow, and internal architecture of Oscilla.
All behaviour is authored directly in SVG and executed at runtime in the browser.
INSTALL
Authoring Workflow
- Workflow — SVG authoring and browser execution
- Cheatsheet — compact syntax reference
Cue Reference
Cues are the primary execution units in Oscilla. They control timing, navigation, media playback, interaction, and external communication.
Timing & Navigation
stop()— halt playbackpause()— pause playbackspeed()— speed controlnav()— navigation and mode controlpage()— page-based navigationstopwatch()— time display and controlrepeat()— repeat and loop structures
Interaction & Structure
button()— interactive UI buttonspropagate()— propagate cue statereuse()— reuse cue definitions
Animation
Oscilla supports continuous and discrete animation tied directly to score timing.
scale()— uniform and non-uniform scalingrotate()— continuous and stepped rotationo2p()— object-to-path traversaltraverse()— object traversal across points or pathscolor()— color animation (documentation forthcoming)fade()— fade visual or UI elementstext()— timed and sequenced text
A/V & Synthesis
OSC & External Control
Further Reading
The design and rationale of Oscilla are described in:
R. Canning, OscillaScore: A Modular Platform for Graphic Notation in Networked Music Performance,
Proceedings of the International Conference on Technologies for Music Notation and Representation (TENOR), Beijing, 2025.