DateTime roundToDay(DateTime date) => DateTime(date.year, date.month, date.day); bool dateIsEqual(DateTime date1, DateTime date2) => roundToDay(date1) == roundToDay(date2); DateTime get today => roundToDay(DateTime.now()); DateTime get yesterday => roundToDay(DateTime.now().subtract(const Duration(days: 1))); String formatTime(DateTime timestamp) { final hours = timestamp.hour.toString().padLeft(2, '0'); final mins = timestamp.minute.toString().padLeft(2, '0'); return '$hours:$mins'; } String formatDate(DateTime date) { if (date == today) return 'Today'; if (date == yesterday) return 'Yesterday'; const List monthTable = [ 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', ]; final int day = date.day; final String month = monthTable[date.month - 1]; final int year = date.year; return '$day. $month $year'; }