JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://rawgithub.com/ripplejs/ripple/master/dist/ripple.min.js"></script>
<script src="https://rawgithub.com/ripplejs/events/master/dist/ripple-events.min.js"></script>
<script src="https://rawgithub.com/ripplejs/refs/master/dist/ripple-refs.min.js"></script>
<script src="https://rawgithub.com/ripplejs/markdown/master/dist/ripple-markdown.min.js"></script>
<head>
  <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://unpkg.com/formiojs@latest/dist/formio.embed.js?src=https://formiodata.form.io/jobapplication"></script>
</head>
<body>
</body>

JavaScript

var View = ripple('<span>Seconds Elapsed: {{secondsElapsed}}</span>');

View.on('mounted', function(view){
  view.interval = setInterval(view.tick.bind(view), 1000);
});

View.on('unmounted', function(view){
  clearInterval(view.interval);
});

View.prototype.tick = function() {
  this.set('secondsElapsed', this.data.secondsElapsed + 1);
};

var view = new View({
  data: { 
    secondsElapsed: 0 
  }   
});

view.appendTo(document.body);