Search packages, repositories and app categories

flutter_advanced_calendar cover
Package detailsv1.4.3

flutter_advanced_calendar

An advanced calendar provides a rich API for widget customization that opens a new look and feel in your app.

AndroidiOSWebmacOSWindowsLinux
30-day downloads
1.2K
Likes
70
Pub points
140

Install package

flutter pub add flutter_advanced_calendar

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

Flutter Advanced Calendar is a highly customizable calendar widget designed to offer a rich API for extensive UI and functional customization. It enables developers to create unique, visually appealing calendars tailored to specific app designs. With support across all major platforms—including Android, iOS, Web, macOS, Windows, and Linux—it ensures consistent experiences regardless of device. The package emphasizes flexibility, allowing deep integration with themes, styling, and event handling.

Use cases

  • Custom event scheduling interfaces
  • App-specific date pickers
  • Rich calendar views in productivity apps
  • Interactive timeline displays
  • Cross-platform calendar components

Key features

  • Extensive widget customization
  • Support for multiple platforms
  • Event and date highlighting
  • Highly flexible layout options
  • Built-in localization support

Suitable for

  • Developers needing advanced calendar UIs
  • Apps requiring custom date selection
  • Projects targeting multiple operating systems

Considerations

  • Requires familiarity with Flutter's widget system
  • May need additional styling effort for complex designs
  • Limited documentation beyond basic usage

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

flutter_advanced_calendar

An advanced calendar provides a rich API for widget customization that opens a new look and feel in your app.

Advanced Calendar Theme LAF

Advanced Calendar Light Theme Advanced Calendar Dark Theme
PREVIEW_LIGHT_COLLAPSED PREVIEW_DARK_COLLAPSED
PREVIEW_LIGHT_EXPANDED PREVIEW_DARK_EXPANDED

Examples

Regular Calendar

final _controller = AdvancedCalendarController.today();
// ...
AdvancedCalendar(
    controller: _controller,
)
// ...

Custom Date Calendar

final _controller = AdvancedCalendarController.custom(DateTime(2021, 2, 15));
// ...
final theme = ThemeData.light();

Theme(
  data: theme.copyWith(
    textTheme: theme.textTheme.copyWith(
      subtitle1: Ttheme.textTheme.subtitle1.copyWith(
        fontSize: 16,
        color: theme.accentColor,
      ),
      bodyText1: theme.textTheme.bodyText1.copyWith(
        fontSize: 14,
        color: Colors.black54,
      ),
      bodyText2: theme.textTheme.bodyText1.copyWith(
        fontSize: 12,
        color: Colors.black87,
      ),
    ),
    primaryColor: Colors.red,
    highlightColor: Colors.yellow,
    disabledColor: Colors.green,
  ),
  child: AdvancedCalendar(
    controller: _calendarControllerCustom,
    weekLineHeight: 48.0,
  ),
),
// ...

AdvancedCalendar Parameters

Parameter Description Type Default
controller Controller that manage calendar state AdvancedCalendarController required
weekLineHeight Height of week line double 32.0
preloadMonthViewAmount Amount of months in month view to preload int 13
preloadWeekViewAmount Amount of weeks in week view to preload int 21
weeksInMonthViewAmount Weeks lines amount in month view int 6
events List of DateTime to indicate date List []
startWeekDay Indicated for the beginning of the first day on Sunday int 0
innerDot Show alternative event design in date box bool false
headerStyle Style for month year on top left TextStyle null
calendarTextStyle Style for dates in calendar TextStyle null

Categories

Dependencies

Dependency list 1 items

Source repository

Projects using this package

No data available yet.