horizontal_weekly_calendar 1.2.6
horizontal_weekly_calendar: ^1.2.6 copied to clipboard
This is a simple horizontal weekly customizable calendar
☕️ Support My Work! #
🚀 horizontal_weekly_calendar v1.2.6 — All-New Features! #
v1.2.5 is here! This update brings two powerful new calendar types:
- TableWeeklyCalendar: A full table-style monthly calendar with week rows, focus dates, and custom header support.
- EventCalendar: A professional event calendar view with time slots, event blocks, and full customization.
All previous styles (Standard, Outlined, Minimal, Elevated) are still available and improved! Now you can showcase and compare all calendar types in your app.
📅 Horizontal Weekly Calendar #
🌟 Project Overview #
A feature-rich, highly customizable horizontal calendar widget for Flutter applications, designed to provide seamless date selection and beautiful UI experiences.
Note: This widget supports multiple display modes and offers smooth animations!
🎨 Visual Demonstration #
✨ Key Features #
- 6 Built-in Styles
- Standard
- Outlined
- Minimal
- Elevated
- TableWeeklyCalendar (NEW)
- EventCalendar (NEW)
| Style | Preview |
|---|---|
| Standard | |
| Outlined | |
| Minimal | |
| Elevated | |
| Table Calendar | |
| Event Calendar |
- Flexible Date Selection
- Month Navigation Controls
- Fully Customizable Theming
- Table & Event Views (NEW!)
- Focus Dates, Custom Headers, and More!
🆕 What's New in 1.2.6 #
- Date Range Restrictions: Set
minDateandmaxDateon all calendar widgets to restrict selectable dates. - Disabled Date Styling: Customize disabled dates with
disabledDayTextStyleanddisabledDayColorin HorizontalCalendarStyle. - Non-Clickable Disabled Dates: Dates outside the allowed range are visually distinct and cannot be selected.
🔧 Installation #
Add to your pubspec.yaml:
dependencies:
horizontal_weekly_calendar: ^1.2.6
💡 Quick Start #
HorizontalWeeklyCalendar(
initialDate: DateTime.now(),
selectedDate: _selectedDate,
onDateSelected: (date) => setState(() => _selectedDate = date),
)
🛠 Customization Options #
Style Configuration #
HorizontalCalendarStyle(
activeDayColor: Colors.blue,
dayIndicatorSize: 40,
monthHeaderStyle: TextStyle(
fontSize: 18,
fontWeight: FontWeight.bold,
),
)
🌈 Theming Support #
The calendar adapts seamlessly to your app's theme:
Theme(
data: ThemeData(
colorScheme: ColorScheme.light(
primary: Colors.purple,
secondary: Colors.orange,
),
),
child: HorizontalWeeklyCalendar(...),
)
📚 API Reference #
| Parameter | Description | Type | Required |
|---|---|---|---|
initialDate |
Starting display month | DateTime |
✅ |
selectedDate |
Currently selected date | DateTime |
✅ |
onDateSelected |
Date selection callback | Function(DateTime) |
✅ |
calendarType |
Display style type | HorizontalCalendarType |
❌ |
minDate |
Minimum selectable date | DateTime? |
❌ |
maxDate |
Maximum selectable date | DateTime? |
❌ |
🤝 Contributing #
Contributions are welcome! Please follow these steps:
- 🍴 Fork the repository
- 🌿 Create a feature branch
- 💾 Commit your changes
- 📤 Push to the branch
- 🔀 Open a Pull Request
📄 License #
MIT License - See LICENSE file for details.
Crafted with ❤️ by github.com/ahmedzaeem