whatisgithub

What is material-calendarview?

prolificinteractive/material-calendarview — explained in plain English

Analysis updated 2026-06-26

5,914JavaAudience · developerComplexity · 2/5LicenseSetup · easy

In one sentence

An Android library that adds a Material Design-styled calendar widget to your app, with support for single dates, date ranges, and custom day decorators like colored dots and highlights.

Mindmap

mindmap
  root((repo))
    What it does
      Calendar widget
      Material Design style
      Date selection
    Customization
      Single or range mode
      Min and max dates
      Decorators and dots
    Tech
      Java
      Android
      JitPack
    Audience
      Android developers
      App builders
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add a date picker to an Android app that matches Material Design guidelines

USE CASE 2

Let users select a continuous date range with minimum and maximum date boundaries

USE CASE 3

Mark specific days with colored dots or custom background shapes to indicate events or availability

USE CASE 4

Control whether users pick a single date, multiple dates, or a date range from the same widget

What is it built with?

JavaAndroidJitPack

How does it compare?

prolificinteractive/material-calendarviewantoniolg/androidmvpamitshekhariitbhu/fast-android-networking
Stars5,9145,9055,902
LanguageJavaJavaJava
Setup difficultyeasymoderateeasy
Complexity2/52/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

Add JitPack to your project-level build.gradle repositories block before adding the dependency.

Open source under a permissive license, use freely in personal and commercial projects.

So what is it?

Material Calendar View is an Android library that adds a calendar widget to your app, styled to match Google's Material Design guidelines. Android includes a built-in CalendarView, but its appearance does not follow Material Design closely. This library was built to fill that gap, offering a cleaner look while giving developers more control over how the calendar behaves. To add it to an Android project, you include it as a dependency from the JitPack repository and drop the MaterialCalendarView component into any layout file. From there, you can listen for date selections in code or read the currently selected dates whenever you need them. The library offers a wide range of customization options. You can control whether users pick a single date, multiple dates, or a continuous date range. You can restrict which dates are selectable by setting minimum and maximum boundaries. The first day of the week can be changed, the header and weekday labels can be replaced with custom text, and dates from adjacent months can be shown or hidden. A decorator system lets you add colored dots, highlights, or custom background shapes to individual days, which is useful for marking events or availability. Version 2.0 made a significant internal change: the library switched from Java's older Calendar class to the newer LocalDate class for representing dates. Months are now numbered 1 through 12 instead of 0 through 11. Version 1.4 reorganized how certain settings (like date range limits and week start) are applied, grouping them into a state object so they take effect all at once rather than triggering repeated recalculations. The project is maintained by Prolific Interactive, a software agency. The library is open source and available under a permissive license.

Copy-paste prompts

Prompt 1
Add MaterialCalendarView to my Android project using JitPack and show a basic date picker in a fragment
Prompt 2
How do I add colored dots to specific dates in MaterialCalendarView to mark events on a calendar?
Prompt 3
Set up MaterialCalendarView so users can select a continuous date range with min and max date limits
Prompt 4
How do I customize the first day of the week and hide dates from adjacent months in MaterialCalendarView?
Prompt 5
Migrate my MaterialCalendarView code from version 1.x to 2.0 after the switch from Calendar to LocalDate

Frequently asked questions

What is material-calendarview?

An Android library that adds a Material Design-styled calendar widget to your app, with support for single dates, date ranges, and custom day decorators like colored dots and highlights.

What language is material-calendarview written in?

Mainly Java. The stack also includes Java, Android, JitPack.

What license does material-calendarview use?

Open source under a permissive license, use freely in personal and commercial projects.

How hard is material-calendarview to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is material-calendarview for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.