Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Android
  3. CrunchyCalendar

CrunchyCalendar

MITKotlinv2.3.0

A lightweight, customizable Android calendar widget with infinite scroll, multiple selection modes, and visual indicators.

GitHubGitHub
647 stars43 forks0 contributors

What is CrunchyCalendar?

CrunchyCalendar is an open-source Android library that provides a customizable calendar widget with Material Design aesthetics. It solves the problem of implementing complex calendar functionalities—like infinite scrolling, range selection, and visual date indicators—without building from scratch. Developers can seamlessly integrate it into their apps to handle date picking and event display.

Target Audience

Android developers building apps that require calendar features, such as booking systems, event planners, travel apps, or any application needing date selection and visualization.

Value Proposition

Developers choose CrunchyCalendar for its combination of a lightweight codebase, out-of-the-box features like infinite scroll and multiple selection modes, and extensive styling options. It saves development time while offering a polished, maintainable component that adheres to modern Android practices.

Overview

A beautiful material calendar with endless scroll, range selection and a lot more!

Use Cases

Best For

  • Adding a date picker to booking or reservation apps
  • Displaying event calendars with color-coded indicators
  • Implementing range selection for travel or scheduling apps
  • Creating custom calendar views with unique styling needs
  • Building apps that require infinite scrolling through months or years
  • Integrating a Material Design calendar into existing Android UIs

Not Ideal For

  • Apps built with Jetpack Compose requiring a native Compose calendar component
  • Projects needing built-in week, day, or agenda views for detailed time-based scheduling
  • Applications that require deep integration with external calendar services like Google Calendar or Outlook
  • Teams looking for a zero-configuration, pre-styled calendar widget without any customization work

Pros & Cons

Pros

Infinite Scrolling Flexibility

Allows smooth vertical scrolling in both directions with configurable date boundaries, ideal for browsing long time periods without pagination, as highlighted in the README's key features.

Versatile Selection Modes

Supports single, multiple, and range selection with custom filtration logic, enabling complex date interaction for booking or scheduling apps, demonstrated in the selection examples.

Deep Visual Customization

Style via XML attributes or programmatically, including colors, indicators, and custom item decorations, making it highly adaptable to diverse app designs, as shown in the styling sections.

Automatic State Preservation

Saves and restores selection state on configuration changes, reducing boilerplate code and improving user experience, explicitly noted in the README's state management section.

Cons

Limited View Options

Only provides a month view with vertical scrolling; lacks built-in support for week, day, or agenda views, which are common in scheduling applications and not mentioned in features.

Customization Overhead

Implementing features like custom indicators or additional text requires creating interfaces and managing data lists, which can be cumbersome for simple use cases, as seen in the indicator and text setup examples.

Traditional View Dependency

As a subclass of View, it may not integrate seamlessly with modern Android UI frameworks like Jetpack Compose, limiting its use in contemporary projects, and the README doesn't address Compose compatibility.

Frequently Asked Questions

Quick Stats

Stars647
Forks43
Contributors0
Open Issues14
Last commit2 years ago
CreatedSince 2018

Tags

#custom-view#date-picker#android#java#android-ui#open-source-library#calendar-view#ui-components#calendar#calendar-widget#material-design#kotlin#customization

Built With

A
Android
K
Kotlin

Included in

Android12.0k
Auto-fetched 6 hours ago

Related Projects

Litho (By Facebook)Litho (By Facebook)

A declarative framework for building efficient UIs on Android.

Stars7,770
Forks764
Last commit4 days ago
TapTargetViewTapTargetView

An implementation of tap targets from the Material Design guidelines for feature discovery.

Stars5,466
Forks593
Last commit1 year ago
AndroidStaggeredGridAndroidStaggeredGrid

An Android staggered grid view which supports multiple columns with rows of varying sizes.

Stars4,729
Forks1,102
Last commit3 years ago
CardslibCardslib

Android Library to build a UI Card

Stars4,616
Forks1,167
Last commit4 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub