A lightweight and developer-friendly date formatting library with full i18n (internationalization) support. Easily format dates into human-readable strings, customize relative time ("3 days ago"), and create localized messages. Perfect for multilingual web and mobile applications.
If you're looking for a lightweight, highly customizable, and i18n-ready date formatter, this package simplifies date handling for multilingual applications. It's designed with developers in mind, offering essential features without the bloat.
- 📆 Date Formatting: Format dates into readable strings for different locales.
- 🌍 Localization Support: Supports multiple languages (English, French, German, and more).
- ⏳ Relative Time: Display relative time like "3 days ago" or "in 5 minutes."
- 🛠️ Custom Messages: Use dynamic templates for localization.
Install the package via NPM or Yarn:
npm install date-formatter-i18n
# or
yarn add date-formatter-i18n
- Import the Library
import DateFormatter from 'date-formatter-i18n';
// Create an instance of DateFormatter
const dateFormatter = new DateFormatter('en');
- Format Dates
const formattedDate = dateFormatter.format('2023-12-25'); // Output: "December 25, 2023"
- Format Relative Time
const threeDaysAgo = new Date(Date.now() - 3 * 24 * 60 * 60 * 1000);
console.log(dateFormatter.formatRelative(threeDaysAgo)); // Output: "3 days ago"
- English (Default)
- French
- German
- Arabic
new DateFormatter(locale: string)
-
Creates a new DateFormatter instance.
-
locale: A string representing the language (e.g., en, fr, de, ar).
.format(date: string | Date, formatString: string)
-
Formats a date using the specified format string.
-
date: The date to format (ISO string or Date object).
-
formatString: Optional. A date-fns format string (default: PPP).
.formatRelative(date: string | Date, baseDate: string | Date)
- Formats a date relative to another date.
- date: The target date.
- baseDate: Optional. The date to compare against (default: new Date()).
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Submit a pull request with your changes.