JSFiddle - React, Tailwind, and code Playground
HTML
<canvas id="timer" width="400" height="400" style="background: green; width:100%"></canvas>
JavaScript
var timer= document.getElementById('timer');
var timerCTX= timer.getContext("2d");
function displayTime(percent){
var zero=-Math.PI/2;
var full= Math.PI*2;
// lets draw the background circle first.
timerCTX.strokeStyle="#555";
timerCTX.lineWidth = 6.5;
timerCTX.beginPath();
timerCTX.arc(timer.width/2, timer.width/2, (timer.width/2)-10, zero, full, false);
timerCTX.stroke();
// now lets draw our percentage circle.
timerCTX.strokeStyle="#bef";
timerCTX.lineWidth = 8;
timerCTX.beginPath();
timerCTX.arc(timer.width/2, timer.width/2, (timer.width/2)-10,zero,(full*percent)+zero, false);
timerCTX.stroke();
}
var difference=0;
var today = new Date();
var startDate = new Date('Sept 3 2013 14:59:01 GMT-0400 (EDT)');
var launchDate= new Date('Sept 3 2013 15:10:01 GMT-0400 (EDT)');
setInterval(function(){
timerCTX.clearRect(0,0,timer.width,timer.height);
today = new Date();
//difference=((launchDate-today)/(startDate-launchDate));
difference+=.01;
//console.log(difference)
displayTime(difference);
},50);