Skip to content

📅 A simple library, based on Material You, to implement an interactive monthly or yearly calendar containing a collection of dates

Notifications You must be signed in to change notification settings

m-i-n-a-r/tasticalendar

Repository files navigation

TastiCalendar

A simple library, based on Material You, to implement a monthly or yearly calendar containing a collection of dates

Javadoc

Introduction

I wrote this library starting from a piece of Birday, since I noticed that there isn't a similar library (at least, not a recent one). I kept it super simple and light, but I'm open to any pull request. Important: this library is provided as is, no updates are guaranteed since I have other projects to focus on. It works (I use it personally in 2 projects) and is quite complete in my opinion, but I'm open to any criticism. This library doesn't need any translation since it doesn't use any strings itself.

How to use

  1. Open the build.gradle (Project level) and, under repositories, make sure to have:
    maven { url "https://jitpack.io" }

  2. Open the build.gradle (Module:app) file of your app, and under dependencies, add:
    implementation 'com.github.m-i-n-a-r:tasticalendar:1.3.6'

  3. Sync Gradle, and you're good to go!

  4. A simple example of use can be found in my Birday app, in this file and in the corresponding layout. Or, you can read the docs!

Features


Monet support examples



3 of the four available scale factors


  • Super lightweight
  • The color scheme automatically adapts to the app (Material You / Monet)
  • Month layout (with different scales)
  • Year layout (adaptive depending on the month scale factor)
  • Clickable days, clickable month titles
  • Disable weekdays, different sunday highlight strategies
  • Automatic or manual "sunday as first day of the week"
  • Easily set any property or render a different year/month
  • Easily pass a collection of dates or TastiCalendarEvent objects to highlight a set of dates on a month
  • The library chooses the best contrast for the text color when a day is highlighted
  • Different highlighting strength based on the number of events in each day

About

📅 A simple library, based on Material You, to implement an interactive monthly or yearly calendar containing a collection of dates

Topics

Resources

Stars

Watchers

Forks

Languages