{"id":51444853,"url":"https://github.com/mrdeveloperjis/calendar-androidapp","last_synced_at":"2026-07-05T15:01:24.655Z","repository":{"id":367898502,"uuid":"1278868026","full_name":"MrDeveloperJIS/Calendar-AndroidApp","owner":"MrDeveloperJIS","description":"A minimal, swipeable Android calendar built with Jetpack Compose and Material 3. Clean monthly view, animated transitions, and tap-to-jump year/month pickers.","archived":false,"fork":false,"pushed_at":"2026-06-28T06:18:43.000Z","size":215,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-28T08:10:38.567Z","etag":null,"topics":["android-app","android-studio","calendar","kotlin"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":false,"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/MrDeveloperJIS.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-24T07:00:38.000Z","updated_at":"2026-06-28T06:16:27.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/MrDeveloperJIS/Calendar-AndroidApp","commit_stats":null,"previous_names":["mrdeveloperjis/calendar-androidapp"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/MrDeveloperJIS/Calendar-AndroidApp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrDeveloperJIS%2FCalendar-AndroidApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrDeveloperJIS%2FCalendar-AndroidApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrDeveloperJIS%2FCalendar-AndroidApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrDeveloperJIS%2FCalendar-AndroidApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MrDeveloperJIS","download_url":"https://codeload.github.com/MrDeveloperJIS/Calendar-AndroidApp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrDeveloperJIS%2FCalendar-AndroidApp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35158308,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-05T02:00:06.290Z","response_time":100,"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-app","android-studio","calendar","kotlin"],"created_at":"2026-07-05T15:01:23.479Z","updated_at":"2026-07-05T15:01:24.635Z","avatar_url":"https://github.com/MrDeveloperJIS.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📅 Calendar — Android App\n\nA clean, minimal calendar app for Android built entirely with **Jetpack Compose** and **Material 3**. No third-party dependencies, no bloat — just a fast, native calendar experience.\n\n---\n\n## ✨ Features\n\n- **Monthly calendar grid** — clean 7-column layout with a Saturday-first week start\n- **Swipe navigation** — swipe left/right anywhere on the screen to move between months\n- **Animated transitions** — smooth slide animations when changing months, with correct directional logic\n- **Tap to navigate** — tap the month or year in the header to jump directly via picker dialogs\n- **Year picker** — scrollable grid covering 1991–2050, auto-scrolled to the current year\n- **Month picker** — 3-column grid for quick month selection\n- **Today card** — pinned bottom card showing today's full date; tap it to jump back to the current month\n- **Today \u0026 selected day indicators** — today gets an outline ring; selected date gets a filled circle\n- **Edge-to-edge UI** — full-screen layout with no wasted space\n- **Material 3 theming** — follows system color scheme (light/dark mode)\n\n---\n\n## 🛠 Tech Stack\n\n| Layer | Technology |\n|---|---|\n| Language | Kotlin |\n| UI | Jetpack Compose |\n| Design system | Material 3 |\n| Date/time | `java.time` (LocalDate, YearMonth) |\n| Architecture | Single-Activity, Composable functions |\n| Min SDK | 35 (Android 15) |\n| Target SDK | 36 |\n\n---\n\n## 📁 Project Structure\n\n```\napp/src/main/java/com/mrjis/calendar/\n│\n├── MainActivity.kt          # Entry point; hosts CalendarApp composable\n│\n└── ui/theme/\n    ├── Color.kt             # App color palette\n    ├── Theme.kt             # MaterialTheme setup\n    └── Type.kt              # Typography definitions\n```\n\n**Key composables inside `MainActivity.kt`:**\n\n- `CalendarApp` — root composable; manages state (current month, selected date, slide direction)\n- `CalendarHeader` — animated month/year label with tap-to-pick support\n- `WeekdayHeader` — static Sat–Fri day-of-week labels\n- `CalendarGrid` — `LazyVerticalGrid` rendering all day cells for a given month\n- `DayCell` — individual day tile with selected/today visual states\n- `TodayDateCard` — bottom card displaying today's full date and acting as a reset button\n- `YearPickerDialog` — scrollable year selection dialog\n- `MonthPickerDialog` — 3-column month selection dialog\n\n---\n\n## 🚀 Getting Started\n\n### Prerequisites\n\n- Android Studio Hedgehog or later\n- Android SDK 35+\n- Kotlin 2.x\n\n### Build \u0026 Run\n\n```bash\ngit clone https://github.com/MrDeveloperJIS/Calendar-AndroidApp.git\ncd Calendar-AndroidApp\n```\n\nOpen the project in Android Studio, wait for Gradle sync, then run on a device or emulator running **Android 15 (API 35)** or higher.\n\n---\n\n## 📱 Screenshots\n\n\u003cimg width=\"232\" height=\"500\" alt=\"1\" src=\"https://github.com/user-attachments/assets/6b809a93-0a5b-4023-b2fe-0622f856e296\" /\u003e\n\u003cimg width=\"232\" height=\"500\" alt=\"2\" src=\"https://github.com/user-attachments/assets/57743b74-a121-4f5d-b0ce-275f88b0d117\" /\u003e\n\u003cimg width=\"232\" height=\"500\" alt=\"3\" src=\"https://github.com/user-attachments/assets/8938c876-1a20-4892-ba7b-9e5596852282\" /\u003e\n\u003cimg width=\"232\" height=\"500\" alt=\"4\" src=\"https://github.com/user-attachments/assets/db9b7882-2e37-40b5-8c02-cb2d56e1794a\" /\u003e\n\u003cimg width=\"232\" height=\"500\" alt=\"5\" src=\"https://github.com/user-attachments/assets/8ca8f083-f6bd-431b-86c0-9dcadad16b9b\" /\u003e\n\u003cimg width=\"232\" height=\"500\" alt=\"6\" src=\"https://github.com/user-attachments/assets/9c6f6604-d39a-4851-bed5-312ebf8364b4\" /\u003e\n\u003cimg width=\"232\" height=\"500\" alt=\"7\" src=\"https://github.com/user-attachments/assets/1959a58e-c547-479f-a6e0-17fb62eafa5f\" /\u003e\n\n---\n\n## 📄 License\n\nThis project is open source. See [LICENSE](LICENSE) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrdeveloperjis%2Fcalendar-androidapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrdeveloperjis%2Fcalendar-androidapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrdeveloperjis%2Fcalendar-androidapp/lists"}