Animations.jl offers an easy way to set up simple animations where multiple keyframes are interpolated between in sequence. You can choose different easing functions or create your own. Keyframe values can be anything that can be linearly interpolated, you can also add your own methods for special types. An easing can have repetitions and delays, so that looping animations are simpler to create.
Check out the documentation here!
x = Animation([0, duration], [1.0, 0.0], polyout(2; n=8, yoyo=true))
y = Animation([0, duration], [0.0, 1.0], linear(n=2, yoyo=true))
color = Animation(
[0, 0.25, 0.5, 0.75] .* duration,
[RGB(0.251, 0.388, 0.847), RGB(0.22, 0.596, 0.149), RGB(0.584, 0.345, 0.698), RGB(0.796, 0.235, 0.2)],
noease())