animation2code benchmark
For best compatibility, please view this dashboard in a Chrome browser.
← back to Simple Spinner

model output

Claude Sonnet 4.6

Simple Spinner

A 0.76T 0.21
compare with ground truth →
1Looking at the frames, I can see:
21. A dark background (#222)
32. A small circle in the center that cycles through colors: blue → teal/green → gray/dim → orange/red → yellow/orange → teal/green (with glow) → golden (with outer ring) → red/orange (with rings) → golden (with rings)
43. The circle grows slightly and gains concentric rings over time
54. The color cycles through a spectrum while the circle pulses/grows
6
7The animation appears to be a circle that:
8- Cycles through colors (blue → green → dim → orange → yellow → teal → gold → red → gold)
9- Gradually grows in size
10- Develops concentric rings/glow effects
11- Loops continuously
12
13<!DOCTYPE html>
14<html lang="en">
15<head>
16<meta charset="UTF-8">
17<meta name="viewport" content="width=device-width, initial-scale=1.0">
18<title>Circle Animation</title>
19<style>
20  * { margin: 0; padding: 0; box-sizing: border-box; }
21  
22  body {
23    background: #222;
24    width: 100vw;
25    height: 100vh;
26    display: flex;
27    align-items: center;
28    justify-content: center;
29    overflow: hidden;
30  }
31
32  .container {
33    position: relative;
34    width: 60px;
35    height: 60px;
36    display: flex;
37    align-items: center;
38    justify-content: center;
39  }
40
41  .ring {
42    position: absolute;
43    border-radius: 50%;
44    border: 1.5px solid transparent;
45    animation: colorCycle 4s linear infinite, pulse 4s ease-in-out infinite;
46  }
47
48  .ring-1 {
49    width: 14px;
50    height: 14px;
51    animation: colorCycle 4s linear infinite, grow1 4s ease-in-out infinite;
52  }
53
54  .ring-2 {
55    width: 22px;
56    height: 22px;
57    animation: colorCycle 4s linear infinite, grow2 4s ease-in-out infinite;
58    animation-delay: 0.3s;
59    opacity: 0;
60  }
61
62  .ring-3 {
63    width: 32px;
64    height: 32px;
65    animation: colorCycle 4s linear infinite, grow3 4s ease-in-out infinite;
66    animation-delay: 0.6s;
67    opacity: 0;
68  }
69
70  @keyframes colorCycle {
71    0%   { border-color: #1a9fd4; }
72    12%  { border-color: #1a7a5a; }
73    25%  { border-color: #3a3a3a; }
74    37%  { border-color: #c0401a; }
75    50%  { border-color: #c08020; }
76    62%  { border-color: #1aaa6a; box-shadow: 0 0 6px #1aaa6a; }
77    70%  { border-color: #a07020; box-shadow: 0 0 4px #a07020; }
78    80%  { border-color: #c03010; box-shadow: 0 0 6px #c03010; }
79    90%  { border-color: #c08020; box-shadow: 0 0 4px #c08020; }
80    100% { border-color: #1a9fd4; box-shadow: none; }
81  }
82
83  @keyframes grow1 {
84    0%   { width: 8px; height: 8px; opacity: 1; }
85    25%  { width: 14px; height: 14px; opacity: 1; }
86    60%  { width: 16px; height: 16px; opacity: 1; }
87    80%  { width: 16px; height: 16px; opacity: 1; }
88    100% { width: 8px; height: 8px; opacity: 1; }
89  }
90
91  @keyframes grow2 {
92    0%   { opacity: 0; width: 14px; height: 14px; }
93    50%  { opacity: 0; }
94    60%  { opacity: 0.7; width: 24px; height: 24px; }
95    80%  { opacity: 0.8; width: 26px; height: 26px; }
96    95%  { opacity: 0; }
97    100% { opacity: 0; width: 14px; height: 14px; }
98  }
99
100  @keyframes grow3 {
101    0%   { opacity: 0; width: 22px; height: 22px; }
102    60%  { opacity: 0; }
103    70%  { opacity: 0.4; width: 36px; height: 36px; }
104    80%  { opacity: 0.5; width: 38px; height: 38px; }
105    95%  { opacity: 0; }
106    100% { opacity: 0; width: 22px; height: 22px; }
107  }
108</style>
109</head>
110<body>
111<div class="container">
112  <div class="ring ring-3"></div>
113  <div class="ring ring-2"></div>
114  <div class="ring ring-1"></div>
115</div>
116</body>
117</html>