{"id":27268762,"url":"https://github.com/dogusteknoloji/compose-date-picker","last_synced_at":"2025-10-15T00:25:43.508Z","repository":{"id":39801582,"uuid":"416636896","full_name":"DogusTeknoloji/compose-date-picker","owner":"DogusTeknoloji","description":"Android DatePicker with month and year build with Compose UI","archived":false,"fork":false,"pushed_at":"2022-12-22T11:01:40.000Z","size":540,"stargazers_count":66,"open_issues_count":2,"forks_count":8,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-07-20T05:53:20.683Z","etag":null,"topics":["android","compose-ui","datepicker","kotlin-android"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DogusTeknoloji.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-10-13T07:40:37.000Z","updated_at":"2024-08-25T04:44:19.000Z","dependencies_parsed_at":"2023-01-30T07:16:21.425Z","dependency_job_id":null,"html_url":"https://github.com/DogusTeknoloji/compose-date-picker","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/DogusTeknoloji/compose-date-picker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DogusTeknoloji%2Fcompose-date-picker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DogusTeknoloji%2Fcompose-date-picker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DogusTeknoloji%2Fcompose-date-picker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DogusTeknoloji%2Fcompose-date-picker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DogusTeknoloji","download_url":"https://codeload.github.com/DogusTeknoloji/compose-date-picker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DogusTeknoloji%2Fcompose-date-picker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270482378,"owners_count":24591342,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-14T02:00:10.309Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","compose-ui","datepicker","kotlin-android"],"created_at":"2025-04-11T11:32:06.103Z","updated_at":"2025-10-15T00:25:38.470Z","avatar_url":"https://github.com/DogusTeknoloji.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Compose Date Picker - Select month and year\n[![](https://jitpack.io/v/DogusTeknoloji/compose-date-picker.svg)](https://jitpack.io/#DogusTeknoloji/compose-date-picker)\n\nCompose Date Picker tries to offer you the year and month pickers which you can customize for your requirements. The library complately written with **Jetpack Compose**.\n\nSupport for Android 5.0 (API level 21) and up.\n\n**Screenshots**\n| ![enter image description here](https://github.com/DogusTeknoloji/compose-date-picker/blob/main/screenshots/ss%20%281%29.png?raw=true) | ![enter image description here](https://github.com/DogusTeknoloji/compose-date-picker/blob/main/screenshots/ss%20%282%29.png?raw=true) |\n|--|--|\n| ![enter image description here](https://github.com/DogusTeknoloji/compose-date-picker/blob/main/screenshots/ss%20%283%29.png?raw=true) | ![enter image description here](https://github.com/DogusTeknoloji/compose-date-picker/blob/main/screenshots/ss%20(5).png)  | \n|||\n| ![enter image description here](https://github.com/DogusTeknoloji/compose-date-picker/blob/main/screenshots/ss%20(4).png) | ![enter image description here](https://github.com/DogusTeknoloji/compose-date-picker/blob/main/screenshots/ss%20(6).png) \n## Implementation\nAdd it in your root build.gradle at the end of repositories:\n\n```gradle\nallprojects {\n\trepositories {\n\t\t...\n\t\tmaven { url 'https://jitpack.io' }\n\t}\n}\n```\nThe easiest way to add the Compose Date Picker library to your project is by adding it as a dependency to your  `build.gradle`\n```gradle\ndependencies {\n\timplementation 'com.github.DogusTeknoloji:compose-date-picker:1.1.0'\n}\n```\n## Usage Compose Date Picker\n\n    ComposeCalendar(  \n      minDate: Date? = null,  // Set min selectable date\n      maxDate: Date? = null,  // Set max selectable date\n      locale: Locale = Locale.getDefault(),  // Set locale for localization\n      title: String = \"\",  // Set title \n      listener: SelectDateListener, // Set Listener for selected date\n      calendarType: CalendarType = CalendarType.MONTH_AND_YEAR, // Set calendar type for ui type\n      themeColor: Color = Color(0xFF614FF0), // Set picker color \n      unselectedColor: Color = Color.White, // Set unselectedText color, when using dark mode you need to handle it\n      negativeButtonTitle:String = \"CANCEL\",  // Set negative button text\n      positiveButtonTitle:String = \"OK\",  // Set positive button text\n      monthViewType: MonthViewType? = MonthViewType.ONLY_MONTH // Set month view type\n    )\n    \n**Listener**\n\n    interface SelectDateListener {  \n        fun onDateSelected(date: Date)  \n        fun onCanceled()  \n    }\n    \n**MonthViewType**\n\n    enum class MonthViewType {\n        ONLY_MONTH,\n        ONLY_NUMBER,\n        ONLY_NUMBER_ONE_COLUMN, // Just like Year view\n        BOTH_NUMBER_AND_MONTH\n    }\n    \n**CalendarType**\n\n    enum class CalendarType {\n        ONLY_MONTH,\n        ONLY_YEAR,\n        MONTH_AND_YEAR,\n        ONE_SCREEN_MONTH_AND_YEAR\n    }\n    \n**Compose Sample**\n\n    val calendar = Calendar.getInstance()  \n    calendar.set(Calendar.YEAR, 2010)  \n    calendar.set(Calendar.MONTH, 6)  \n    val calendarMax = Calendar.getInstance()  \n    calendarMax.set(Calendar.YEAR, 2032)  \n    calendarMax.set(Calendar.MONTH, 9)\n    \n    Box(Modifier  \n        .fillMaxSize()  \n        .background(color = Color.Gray), contentAlignment = Alignment.Center) {  \n       \n\t      ComposeCalendar(minDate = calendar.time,  \n\t      maxDate = calendarMax.time,  \n\t      locale = Locale(\"en\"),  \n\t      title = \"Select Date\",  \n\t      listener = object : SelectDateListener {  \n\t                    override fun onDateSelected(date: Date) {  \n\t                        Log.i(\"DATE\", date.toString())  \n\t                    }  \n\t      \n\t                    override fun onCanceled() {  \n\t                        setOpen(false)  \n\t                    }  \n\t                })  \n\t        }\n**XML Layout Sample**\n\t\n    //XML Layout\n    \n    \u003candroidx.compose.ui.platform.ComposeView\n      android:id=\"@+id/composeDatePickerView\"\n      android:layout_width=\"match_parent\"\n      android:layout_height=\"match_parent\" /\u003e\n      \n      \n\t//Activity-Fragment\n\t\n    binding.composeDatePickerView.apply{\n\t    setContent{\n\t\t    ComposeCalendar(minDate = calendar.time,  \n\t\t      maxDate = calendarMax.time,  \n\t\t      locale = Locale(\"en\"),  \n\t\t      title = \"Select Date\",  \n\t\t      listener = object : SelectDateListener {  \n\t\t                    override fun onDateSelected(date: Date) {  \n\t\t                        Log.i(\"DATE\", date.toString())  \n\t\t                    }  \n\t\t      \n\t\t                    override fun onCanceled() {  \n\t\t                        setOpen(false)  \n\t\t                    }  \n\t\t                })  \n\t    }\n\t}\n\nDesign inspired by https://github.com/premkumarroyal/MonthAndYearPicker \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdogusteknoloji%2Fcompose-date-picker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdogusteknoloji%2Fcompose-date-picker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdogusteknoloji%2Fcompose-date-picker/lists"}