Shared Calendar Overlap Highlighter
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Shared Calendar Overlap Highlighter automatically scans calendar pages and highlights overlapping events to help you avoid double-booking and scheduling conflicts. It extracts event start times, end times, and titles from calendar DOM elements across multiple platforms including Google Calendar, Outlook Web, Calendly, Apple Calendar, Yahoo Calendar, and Teamup. The script compares all events to find time overlaps exceeding a configurable threshold (default 5 minutes) and applies a color-coded highlight to conflicting events. A panel overlay shows a summary of conflicts found, with a list of overlapping event pairs and the duration of each overlap. You can click on any highlighted event to see detailed conflict information. The tool also provides a free/busy analysis showing available time slots between events, making it easy to find windows for new meetings.
WHERE IT RUNS
This script runs on any webpage that contains calendar events—Google Calendar, Outlook Web, Calendly scheduling pages, Apple Calendar, Yahoo Calendar, Teamup, and other calendar applications. It operates entirely within your browser tab, reading the page's DOM to locate event elements and extract timing information. The script cannot access other tabs, your browsing history, bookmarks, downloads, or any data outside the current page. All settings—including highlight color, conflict threshold, overlapping titles display, auto-analyze preference, and free slots display—are stored locally using GM_setValue and never transmitted anywhere.
HOW TO USE
After installing with the BotGentz extension, the script automatically analyzes calendar pages you view (if auto-analyze is enabled). Events are highlighted in red/orange when conflicts are detected, and the panel shows a summary of events, conflicts, and free slots. Click "Analyze Calendar" to manually trigger analysis at any time. Each conflict is listed with the titles of the overlapping events and the overlap duration. Click any highlighted event to see detailed conflict information in a notification. Enable "Show Overlapping Titles" to add tooltips to highlighted events showing conflict details. Use the "Free Slots" feature to see available time windows between your events. Adjust the conflict threshold to control how much overlap triggers a conflict (e.g., set to 0 minutes to detect any overlap, or 15 minutes to ignore very short overlaps). Click "Copy Report" to export a summary of conflicts and free slots.
THE REAL MECHANISM
The script uses a platform-specific extraction engine to handle the different DOM structures of popular calendar applications. It detects the platform from the URL, then applies targeted selectors: Google Calendar uses event divs with role="button" and data-date attributes; Outlook uses .eventItem and .ms-Event elements; Calendly uses .calendar-event and .booking-block; Apple, Yahoo, and Teamup use their own selectors. A generic fallback scans for common calendar patterns like .event, .calendar-event, .fc-event, and elements containing time patterns. For each detected event, the script extracts the title and parses start/end times using regular expressions for time formats like "2:30 PM" or "14:30", with fallback to data attributes (data-start, data-time). The overlap detection algorithm compares every pair of events and calculates overlap in minutes; if overlap exceeds the threshold, the events are flagged as conflicting. Highlighting is applied via inline CSS with a red background and border. The free slots calculation sorts events by start time and identifies gaps between them within a typical workday (8 AM to 6 PM). All DOM manipulation uses safe methods with no innerHTML from untrusted content.
THE PANEL
The Calendar Overlap panel is a BGPanel component that you can drag anywhere on your screen by its header. It snaps to the nearest edge when released, keeping your workspace organized. The panel collapses to a small bubble showing only the emoji icon when minimised—click to expand it again. You can resize the panel horizontally to see more of the conflict list. Press the Escape key to collapse the panel instantly. Your panel position and size are saved per-site.
PLEASE NOTE
This script requires the free BotGentz browser extension to function. Calendar platforms frequently update their user interfaces, which may change class names, data-testid attributes, and event structures—the script may require updates to maintain compatibility. The script extracts events based on visible page content; events that are not visible on the current screen may not be detected. Time parsing assumes standard time formats; some calendars may use 24-hour format or other conventions that may not be fully supported. The free slots analysis assumes events for the current day and may not account for recurring events or all-day events. The script never reads or writes password fields, hidden inputs, or file inputs. It stores only your highlight color, conflict threshold, title display preference, auto-analyze preference, and free slots preference locally. No calendar data, event information, or personal information is ever collected, transmitted, or shared.