-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
Agent 57951 edited this page Dec 31, 2025
·
1 revision
This guide will help you get started with the Kurdish Calendar Library.
dotnet add package KurdishCalendar.CoreInstall-Package KurdishCalendar.Coreusing KurdishCalendar.Core;
// Create a specific date
KurdishDate date1 = new KurdishDate(2725, 1, 1); // 1st Xakelêwe 2725
// Get today's date
KurdishDate today = KurdishDate.Today;
// Convert from Gregorian
DateTime gregorian = new DateTime(2025, 3, 21);
KurdishDate nowruz = KurdishDate.FromDateTime(gregorian);KurdishDate date = new KurdishDate(2725, 1, 15);
// Short format (default)
string short = date.ToString();
// Output: 15/01/2725
// Long format with Sorani Latin
string longSorani = date.ToString("D", KurdishDialect.SoraniLatin);
// Output: 15 Xakelêwe 2725
// Long format with Kurmanji Arabic
string longKurmanji = date.ToString("D", KurdishDialect.KurmanjiArabic);
// Output: ١٥ خاکەلێوە ٢٧٢٥
// Custom format
string custom = date.ToString("dd MMMM yyyy", KurdishDialect.SoraniLatin);
// Output: 15 Xakelêwe 2725KurdishDate kurdishDate = new KurdishDate(2725, 1, 1);
DateTime gregorian = kurdishDate.ToDateTime();
// Returns: 2025-03-21KurdishDate date = new KurdishDate(2725, 1, 1);
// Add days
KurdishDate tomorrow = date.AddDays(1);
// Add months
KurdishDate nextMonth = date.AddMonths(1);
// Add years
KurdishDate nextYear = date.AddYears(1);
// Calculate difference
int daysDiff = date.DaysDifference(tomorrow); // Returns: -1// Parse from string
KurdishDate date1 = KurdishDate.Parse("15 Xakelêwe 2725", KurdishDialect.SoraniLatin);
KurdishDate date2 = KurdishDate.Parse("15/01/2725", KurdishDialect.SoraniLatin);
// Safe parsing with TryParse
if (KurdishDate.TryParse("15/01/2725", KurdishDialect.SoraniLatin, out KurdishDate result))
{
Console.WriteLine($"Parsed: {result}");
}using KurdishCalendar.Core;
DateTime gregorian = new DateTime(2025, 1, 28);
// Kurmanji Gregorian formatting
string kurmanji = gregorian.ToKurmanjiGregorianLong();
// Output: 28 Kanûna Duyê 2025
// Sorani Gregorian formatting
string sorani = gregorian.ToSoraniGregorianLong();
// Output: 28 Kanûnî Duhem 2025
// Arabic script
string kurmanjiArabic = gregorian.ToKurmanjiGregorian(
GregorianKurmanjiFormatter.ScriptType.Arabic
);
// Output: ٢٨ کانوونا دویێ ٢٠٢٥The library supports 10 dialect/script combinations:
| Dialect | Description |
|---|---|
SoraniLatin |
Sorani dialect with Latin script (Kurdish calendar) |
SoraniArabic |
Sorani dialect with Arabic script (Kurdish calendar) |
SoraniGregorianLatin |
Sorani with Gregorian month names (Latin) |
SoraniGregorianArabic |
Sorani with Gregorian month names (Arabic) |
KurmanjiLatin |
Kurmanji dialect with Latin script (Kurdish calendar) |
KurmanjiArabic |
Kurmanji dialect with Arabic script (Kurdish calendar) |
KurmanjiGregorianLatin |
Kurmanji with Gregorian month names (Latin) |
KurmanjiGregorianArabic |
Kurmanji with Gregorian month names (Arabic) |
HawramiLatin |
Hawrami dialect with Latin script (Kurdish calendar) |
HawramiArabic |
Hawrami dialect with Arabic script (Kurdish calendar) |
- See Month Names Reference for complete month name listings
- See Day Names Reference for complete day name listings
- See Date Formatting Guide for advanced formatting options
- See Code Examples for more usage patterns