A fully customizable iOS calendar view component that functions as an interactive date range picker.
GLCalendarView is an open-source iOS library that provides a customizable calendar view component, functioning as an interactive date range picker. It allows developers to display, add, edit, and delete date ranges with visual feedback and model binding. The component handles user interactions internally while offering delegate methods for custom validation and data handling.
iOS developers building apps that require calendar-based scheduling, booking systems, or time-tracking features, such as travel, event planning, or productivity applications.
Developers choose GLCalendarView for its high degree of customization, built-in interactive range management, and seamless model binding, which reduces the need to build complex calendar logic from scratch.
A fully customizable calendar view acting as a date range picker
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Handles adding, editing, and deleting date ranges through touch interactions internally, reducing the need for custom gesture logic as shown in the demo GIF.
Allows binding custom model objects like Trip instances to ranges, enabling easy data retrieval and updates directly from the calendar interface.
Offers a comprehensive API to adjust row height, padding, fonts, colors, and range display modes, as detailed in the appearance section of the README.
Provides delegate methods for validating range creation, updates, and edits, giving developers fine-grained oversight over user interactions.
Primarily written in Objective-C, requiring bridging headers or compatibility layers in Swift projects, which adds integration complexity and limits Swift-native development.
Customization requires verbose configuration in AppDelegate using appearance APIs, which can be error-prone and less intuitive compared to modern Swift UI approaches.
No support for Swift Package Manager; only CocoaPods or manual file copying, and the version 1.0.0 suggests limited recent updates or community activity.