JSFiddle - React, Tailwind, and code Playground
HTML
<canvas></canvas>
CSS
canvas {
width: 400px;
height: 400px;
}
JavaScript
(function(C,f){
c=C.getContext('2d');
c.transform(2,t=0,0,1,148,R=74);
F=f;
X=Math.cos;
setInterval("c.fillRect(R*(r=X(F*t))*X(t),R*r*Math.sin(t+=.01),1,1)",5);
})(document.querySelector("canvas"), 8/3);