License: Apache 2.0
Zamanak Calendar is a powerful date and time library for Android with full support for Jalali (Persian), Hijri (Islamic), and Gregorian calendars. It provides both core functionality and a modern Jetpack Compose UI for seamless date and time selection.
1. Core Module
Lightweight Kotlin core for date manipulation and conversion.
- Jalali, Hijri, and Gregorian support
- Date conversion and arithmetic
- Format and comparison utilities
- No external dependencies
dependencies {
implementation 'com.github.SeyyedAliTabatabaei.ZamanakCalendar:core:[Latest Version]'
}val calendar = ZamanakCore()
calendar.setDateFromJalali(JalaliDate(1403, 2, 22))
val formatted = calendar.jalaliDate.format(DateFormat.SHORT, Language.FARSI)Jetpack Compose-based customizable UI components for date/time picking.
- Calendar support: Jalali, Hijri, Gregorian
- Elegant, responsive, and themeable UI
- Localized labels and texts
- Compose-state friendly
dependencies {
implementation 'com.github.SeyyedAliTabatabaei.ZamanakCalendar:compose-ui-date-picker:[Latest Version]'
}ZamanakDatePicker(
config = ZamanakDatePickerConfig(
calendarType = CalendarType.Jalali,
language = Language.FARSI
)
) { selectedDate ->
Log.d("TAG", "Selected: $selectedDate")
}Add JitPack to your root settings.gradle:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
maven { url 'https://jitpack.io' }
}
}Seyyed Ali Tabatabaei
📧 SeyyedAliTabatabaei7@gmail.com
🌐 GitHub Profile
🌟 Star this repo to support the project!
🐛 Found a bug? Open an issue