1. A computer-implemented method, comprising: accessing data defining an animation sequence with timeline data over a number of keyframes, the animation sequence depicting motion of at least one object over time; accessing data identifying animation primitives supported by a client rendering platform; analyzing the data defining the animation sequence to determine a first portion of the animation sequence that can be represented using a set of visual assets animated using a portion of the animation primitives supported by the client rendering platform and a second portion of the animation sequence that can be represented by using a scripting language to control transitions between frames defined in the animation sequence representing the second portion, wherein at least some of the frames of the second portion of the animation sequence include animation primitives that are not natively supported by the client rendering platform; and generating a package, the package comprising markup code referencing the visual assets and defining an appearance of the frames, a stylesheet referencing the animation primitives, and a structured data object, the markup code generated to cause a rendering application of the client rendering platform to provide the animation sequence by using the scripting language to coordinate rendering of each of the first portion and the second portion according to a parameter included in the structured data object, the first portion rendered by applying the animation primitives as styles in the stylesheet to the set of visual assets, wherein the styles are applied to move the animation primitives, and the second portion rendered by drawing each frame of the second portion by using the scripting language, wherein a frame of the first portion and a frame of the second portion are rendered next to each other in a temporal sequence.