Which atmosphere package or npm package do you recommend for relative time?

Hello guys,

Which atmosphere package or npm package do you recommend for relative time?
Something like this
https://github.com/stratogee/relative-time ?

Thanks

Either Date Fns - https://date-fns.org/v1.30.1/docs/distanceInWords (newer, immutable, lighter weight)

Or moment.js… (been around for yonks, battle-tested, has everything you would need and then some…)

I ended up doing the following:

Template.registerHelper('relativeTime', function (param) {
  if (param instanceof Date) {
    param = param.getTime();
  }

  let msPerMinute = 60 * 1000;
  let msPerHour = msPerMinute * 60;
  let msPerDay = msPerHour * 24;
  let msPerMonth = msPerDay * 30;
  let msPerYear = msPerDay * 365;

  let elapsed = new Date().getTime() - param;

  if (elapsed < msPerMinute) {
    return Math.round(elapsed/1000) + ' s';
  }
  else if (elapsed < msPerHour) {
    return Math.round(elapsed/msPerMinute) + ' m';
  }
  else if (elapsed < msPerDay) {
    return Math.round(elapsed/msPerHour ) + ' h';
  }
  else if (elapsed < msPerMonth) {
    return 'approximately ' + Math.round(elapsed/msPerDay) + ' d';
  }
  else if (elapsed < msPerYear) {
    return 'approximately ' + Math.round(elapsed/msPerMonth) + ' m';
  }
  else {
    return 'approximately ' + Math.round(elapsed/msPerYear ) + ' y';
  }

  return d;
});

I use momentjs Time From Now, works great and support multiple languages.

1 Like