1# cat 2 3The mascots, as data. A mascot in a mood becomes a **scene**: rectangles on the Android app's 15 4by 16 grid, in groups, each group with the motion it has. Nothing here draws or does I/O. 5 6- `Mascot` is the closed set of who can be shown: Ginger (the default, first in the picker), Grey 7 and Bunny. `scene(mascot, mood)` is what is drawn: shadow, the body breathing, what is 8 round it. 9- The nodes, the motions and the grey cat's drawing are [`whiskers-art`](../../crates/whiskers-art/)'s, 10 shared with the app; Ginger and Bunny are drawn here (`art_ginger.rs`, `art_bunny.rs`). 11- `svg` writes a scene as markup, either live (the page: moving parts carry classes, pupils are 12 bound to the pointer) or as a frame (the preview video: every motion baked in at a time). 13- `css::stylesheet()` is the keyframes that play the live version, for the motions the page's scenes 14 use, sampled from the same motion functions the frames use, so page and video cannot move 15 differently. 16 17Moods: idle, listening, thinking, speaking, dizzy, sleeping. 18 19| Path | What | 20| --- | --- | 21| [src/](src/) | The modules. | 22| [Cargo.toml](Cargo.toml) | Depends on `whiskers-art` and `whiskers-pet`. |