Pub Version Likes Popularity

โ˜• Buy Me a Coffee

Buy Me a Coffee

๐Ÿ“… Multi View Calendar (Flutter)

multi_view_calendar is a powerful and customizable Flutter calendar package that provides week, month, and year views out of the box. It is responsive, efficient, and ideal for productivity, planner, and scheduling apps.


๐ŸŽฌ Demo Video

Day Demo Week Demo Month Demo Year Demo

๐Ÿงฉ Features

  • ๐Ÿ“† Multiple views: DayView, WeekView, MonthView, and YearView
  • ๐Ÿง  Intelligent layout: Automatically arranges days and weeks
  • ๐ŸŽจ Fully customizable: Colors, date builders, styles
  • ๐Ÿ”„ Lazy loading support for better performance
  • ๐Ÿ“ฑ Responsive UI for mobile and tablet
  • ๐Ÿ“Œ Event support with overlapping, tap handling, and tooltips
  • โœ… Built with modular structure (controller, data, widgets, utils)
  • ๐Ÿ”„ Show events by date

๐Ÿ’ก Use Cases

  • Daily, weekly, and monthly planning apps
  • Task and project management tools
  • Scheduling, time-blocking, or team calendars
  • Habit tracking or event tracking apps

๐Ÿ—๏ธ Architecture

Component Description
DayView, WeekView, MonthView, YearView Main calendar views
ColorUtils Helper functions for colors
ShowUtils Helper functions for show widget for date
TimeUtils Helper functions for date calculations and layout logic
StringUtils Helper functions for String logic

๐Ÿš€ Getting Started

๐Ÿงพ Constructor Parameters

Field Type Default Description
date (DayView) DateTime required Initial date used as the reference point when opening the calendar
events List required The list of events is displayed by hour.
showTimeLabels (DayView) bool true Toggle timeline visibility.
month (MonthView) DateTime required Initial month used as the reference point when opening the calendar
weekStartDate (WeekView) DateTime required Initial week used as the reference point when opening the calendar
year int required Initial year used as the reference point when opening the calendar

๐Ÿš€ Usage

โœ… Basic Usage

โญ DAY VIEW

DayView(date: _currentDate, events: widget.events)

โญ WEEK VIEW

WeekView(weekStartDate: _currentDate, events: widget.events);

โญ MONTH VIEW

MonthView(month: _currentDate, events: widget.events);

โญ YEAR VIEW

YearView(year: 2025);

โš™๏ธ Setup

To install the multi_view_calendar package, add the following to your pubspec.yaml file:

dependencies:
  multi_view_calendar: ^1.0.2

๐Ÿ“ฆ Supported SDKs

  • Flutter: Stable channel
  • Android: SDK 21+
  • iOS: iOS 9+

๐Ÿ™Œ Contributions

Feel free to open issues or pull requests on GitHub.


๐Ÿ“„ License

MIT License. See LICENSE for details.

Libraries