Calendar Planner View

A customizable daily calendar planner view with time-based events and Material 3 design.

Live Demo

Screenshots

Dropdown All View Dropdown Meeting View
Dropdown Select View Select Date
Month View Week View
Select Date Multi Theme
Multi Column Month View Multi Column Week View

Features

  • Time-based daily calendar view
  • Month and week view modes
  • Customizable event display
  • Material 3 design support
  • Customizable theme support
  • Customizable date picker
  • Dropdown styling customization
  • Sticky time labels
  • Event dot indicators
  • Multi-column layout support
  • Responsive design
  • Theme-aware styling
  • Event loading overlay

Installation

Add this to your package's pubspec.yaml file:

dependencies:
  calendar_planner_view: any

Usage

import 'package:calendar_planner_view/calendar_planner_view.dart';

// Basic usage
CalendarPlannerView(
  events: myEvents,
  onEventTap: (event) => print('Event tapped: $event'),
  datePickerPosition: DatePickerPosition.top,
  showCurrentTimeIndicator: true,
)

// Advanced usage with customization
CalendarPlannerView(
  events: myEvents,
  onEventTap: (event) => print('Event tapped: $event'),
  datePickerPosition: DatePickerPosition.modal,
  showCurrentTimeIndicator: true,
  startHour: 8,
  endHour: 20,
  showDayTitle: true,
  enableViewToggle: true,
  initialView: CalendarViewType.week,
  dotColor: Colors.blue,
  modalBackgroundColor: Colors.white,
  modalTitleStyle: TextStyle(
    color: Colors.black,
    fontWeight: FontWeight.bold,
  ),
)

Live Demo

Check out the live demo to see the calendar planner view in action.

Dependencies

  • Flutter SDK
  • intl: ^0.20.2
  • table_calendar: ^3.2.0
  • flutter_hooks: ^0.21.2

Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

License

This project is licensed under the MIT License - see the LICENSE file for details