-
Notifications
You must be signed in to change notification settings - Fork 0
formatting
github-actions[bot] edited this page May 29, 2026
·
1 revision
All examples use formatHijriDate. The function takes a Gregorian Date, a format string with Hijri tokens, and an optional options argument for calendar selection.
| Token | Output example | Description |
|---|---|---|
iYYYY |
1444 |
Hijri year, 4 digits |
iYY |
44 |
Hijri year, 2 digits |
iMM |
09 |
Month number, zero-padded |
iM |
9 |
Month number, unpadded |
iMMMM |
Ramadan |
Full month name |
iMMM |
Ram |
3-letter month abbreviation |
iDD |
01 |
Day of month, zero-padded |
iD |
1 |
Day of month, unpadded |
import { formatHijriDate } from 'date-fns-hijri';
// 1 Ramadan 1444 CE = March 23, 2023 CE
const date = new Date(2023, 2, 23);
// Numeric ISO-style (useful for sorting)
formatHijriDate(date, 'iYYYY-iMM-iDD');
// '1444-09-01'
// Numeric short
formatHijriDate(date, 'iDD/iMM/iYYYY');
// '01/09/1444'
// Long form
formatHijriDate(date, 'iD iMMMM iYYYY');
// '1 Ramadan 1444'
// With abbreviation
formatHijriDate(date, 'iD iMMM iYY AH');
// '1 Ram 44 AH'
// Arabic-script label (month name only changes)
formatHijriDate(date, 'iDD iMMMM iYYYY');
// '01 Ramadan 1444'Literal text passes through unchanged. Wrap text in single quotes if it contains characters that could be interpreted as format tokens.
// 'AH' contains 'A' and 'H' which are not Hijri tokens, so this is safe
formatHijriDate(date, 'iD iMMMM iYYYY AH');
// '1 Ramadan 1444 AH'
// Single-quote wrapping for safety
formatHijriDate(date, "iD 'of' iMMMM, iYYYY");
// '1 of Ramadan, 1444'import { formatHijriDate } from 'date-fns-hijri';
const date = new Date(2023, 2, 23);
const fcna = { calendar: 'fcna' };
formatHijriDate(date, 'iD iMMMM iYYYY', fcna);
// May be '1 Ramadan 1444' or '2 Ramadan 1444' depending on the astronomical calculationimport { formatHijriDate } from 'date-fns-hijri';
function HijriDisplay({ date }: { date: Date }) {
return (
<span className="hijri-date">
{formatHijriDate(date, 'iD iMMMM iYYYY')}
</span>
);
}import { getHijriMonthName } from 'date-fns-hijri';
// Render all 12 month names for a year selector
const months = Array.from({ length: 12 }, (_, i) => ({
number: i + 1,
name: getHijriMonthName(i + 1),
short: getHijriMonthName(i + 1, { format: 'short' }),
}));date-fns-hijri · MIT License · npm · Issues
Guides
Examples
Reference
API — Per Function
- toHijriDate
- fromHijriDate
- isValidHijriDate
- getHijriYear
- getHijriMonth
- getHijriDay
- getDaysInHijriMonth
- getHijriQuarter
- getHijriMonthName
- getHijriWeekdayName
- formatHijriDate
- addHijriMonths
- addHijriYears
- startOfHijriMonth
- endOfHijriMonth
- isSameHijriMonth
- isSameHijriYear
Community