Part I. Clutter Overview

Clutter is a GObject based library for creating fast, visually rich graphical user interfaces.

Clutter semantics work by having a stage (a window) and then adding actors (widgets) to the stage and manipulating via the actor api. Actors can contain child actors (ClutterGroup for example) and be manipulated as a whole.

Animations and visual effects can be created via the use of timelines and behaviours. Timelines provide accurate frame based animations. Behaviours further extend this by taking a timeline, a control function (clutter.Alpha) and then applying to actors as to modify a property as a function of time.