flutter_calendar_pro library

A highly customizable, feature-rich calendar package for Flutter

Classes

AdvancedCalendar
Main calendar widget with all views
AgendaView
A list-based view displaying events chronologically grouped by date.
CalendarConfig
Configuration for calendar behavior and appearance.
CalendarController
Controller for managing calendar state and events.
CalendarEvent
Represents a calendar event with comprehensive feature support.
CalendarHeader
Navigation header for the calendar with view switching and date navigation.
CalendarTheme
Theme configuration for calendar appearance and styling.
DayCell
A single day cell widget for calendar views.
DayView
A detailed hourly view displaying events for a single day.
EventCard
A card widget for displaying calendar events with various display modes.
EventIndicator
A compact circular indicator for events.
MonthView
A traditional calendar grid view displaying a full month.
RecurrenceEnd
Defines when a recurring event series should end.
RecurrenceRule
Defines a recurrence pattern for repeating events.
TimelineView
A multi-column timeline view displaying events across different resources.
WeekView
A week-based calendar view displaying events across 7 days with hourly time slots.
YearView
A year overview displaying all 12 months in a grid layout.

Enums

CalendarView
Available calendar view modes.
EventPriority
Priority levels for calendar events.
EventStatus
Status of a calendar event.
RecurrenceEndType
Defines how a recurring event series ends.
RecurrenceFrequency
Frequency options for recurring events.
WeekStartDay
First day of the week for calendar display.

Extensions

WeekStartDayExtension on WeekStartDay
Extension methods for WeekStartDay enum.

Functions

addMonths(DateTime date, int months) DateTime
Adds a specified number of months to a date.
copyTimeToDate(DateTime date, DateTime time) DateTime
Copies the time components from one DateTime to another.
getDateRange(DateTime start, DateTime end) List<DateTime>
Gets all dates between two dates (inclusive).
getDaysInMonth(DateTime date) int
Gets the number of days in the month containing the given date.
getDaysInMonthList(DateTime date) List<DateTime>
Gets a list of all days in the month containing the given date.
getEndOfDay(DateTime date) DateTime
Gets a DateTime representing the end of the day (23:59:59.999).
getEndOfMonth(DateTime date) DateTime
Gets the last day of the month containing the given date.
getEndOfWeek(DateTime date, int weekStartDay) DateTime
Gets the last day of the week containing the given date.
getStartOfDay(DateTime date) DateTime
Gets a DateTime representing the start of the day (00:00:00.000).
getStartOfMonth(DateTime date) DateTime
Gets the first day of the month containing the given date.
getStartOfWeek(DateTime date, int weekStartDay) DateTime
Gets the first day of the week containing the given date.
getVisibleDays(DateTime month, int weekStartDay, {bool hideWeekends = false}) List<DateTime>
Gets all visible days for a month view calendar.
getWeekDays(DateTime date, int weekStartDay) List<DateTime>
Gets all seven days in the week containing the given date.
getWeekNumber(DateTime date) int
Gets the ISO week number for a given date.
isFuture(DateTime date) bool
Checks if the given date is in the future.
isPast(DateTime date) bool
Checks if the given date is in the past.
isSameDay(DateTime a, DateTime b) bool
Checks if two dates represent the same calendar day.
isSameMonth(DateTime a, DateTime b) bool
Checks if two dates are in the same month.
isSameWeek(DateTime a, DateTime b, int weekStartDay) bool
Checks if two dates are in the same week.
isToday(DateTime date) bool
Checks if the given date is today.
isWeekend(DateTime date) bool
Checks if the given date falls on a weekend (Saturday or Sunday).