Share Availability¶
Feature Overview
Calculate and share your available time slots with clients, colleagues, and collaborators without exposing your personal calendars! Share Availability scans your selected remote and local calendars, solves for overlapping event busy periods, and produces clean schedules. You can export a beautifully formatted Markdown schedule directly to your vault, or publish a secure, client-side interactive booking page using a secret GitHub Gist.
Output Formats¶
Exporting as a Markdown file creates a formatted .md schedule directly in your vault.
- Visual Highlights: Grouped chronologically by day using status emojis (โจ for open slots, ๐ฅ for busy periods).
- Timezone Aware: Uses your configured display timezone by default.
- Instant Access: The generated file is saved to your default export path and automatically opened in a new Obsidian workspace tab.
Markdown Output Example¶
# Shared Availability
## Wednesday, May 20, 2026
- โจ 09:00 AM - 10:30 AM (Available)
- ๐ฅ 10:30 AM - 12:00 PM (Busy)
- โจ 12:00 PM - 05:00 PM (Available)
Generating a web link uploads your anonymized slot schedule to a secret, unlisted GitHub Gist under your personal account. You will need to link your Github account for this to work.
- Timezone Conversion: Viewers can toggle between your timezone and their local browser timezone.
- Interactive Booking: Viewers click any available slot to generate a pre-formatted copyable booking request (e.g. "I would like to book the slot on Wednesday, May 20 from 2:00 PM to 3:00 PM").
- Data Minimization: The Gist only contains anonymous start and end times (e.g.
2026-05-20T09:00:00Z); no private event titles, descriptions, or calendars are ever uploaded.
How It Works: The Slot Solver¶
Local Processing Pipeline
The core AvailabilityService uses a client-side layout solver: 1. Gathers Calendar Events: Queries all checked calendar sources (such as Google Calendar, CalDAV, or ICS) within the requested window. 2. Ignores All-Day Events: All-day items (e.g., birthdays, holidays) are automatically skipped so they do not block your day. 3. Merges Busy Intervals: Adjacent or overlapping busy events are combined into continuous blocked periods. 4. Generates Free Slots: Computes the remaining time gaps that lie within your configured daily start/end bounds.
Configuration Settings¶
To customize the default behavior, open Settings โ Integrations and scroll to Availability Sharing:
| Setting | Purpose | Default / Example |
|---|---|---|
| Default Export Path | Vault folder path where Markdown schedules are saved. | calendars/availability |
| Default Daily Start Time | Start hour for calculated daily slots. | 09:00 |
| Default Daily End Time | End hour for calculated daily slots. | 17:00 |
| GitHub Access Token | Personal token with gist scope to upload web schedules. |
github_pat_... |
Setting Up Web Sharing¶
Privacy First: Zero Server Storage
All availability computations are executed locally. Published web links are hosted entirely serverless using secret GitHub Gists. No schedule, calendar, or user data is ever sent to or stored on our servers.
To authorize online sharing:
- Click the helper link in the settings panel or the share modal to open the GitHub Token Creation Page.
- Generate a Personal Access Token (Classic) with the
gistscope enabled. - Copy and paste the token into the plugin's settings.
Safety Invariants & Warnings¶
Performance Boundaries
Generating schedules for date ranges longer than 90 days triggers a performance warning notice in the modal. Scanning and calculating availability slot-by-slot over large ranges can cause temporary Obsidian lag. For maximum speed, keep ranges within 30โ60 days.
Secret Gist Security
Gists generated by this feature are secret (unlisted), meaning they are not indexed by search engines. However, anyone who possesses the generated URL has read-access to the anonymous JSON payload. You can delete or manage published schedules at any time from your GitHub Gists dashboard.
๐ Related Resources¶
- Google Calendar Setup โ Set up two-way Google Calendar synchronization.
- CalDAV Sync โ Connect iCloud, Nextcloud, Fastmail, and CalDAV servers.
- ICS Calendars โ Integrate remote and local
.icsfiles. - Outlook Setup โ Integrate Outlook/Exchange accounts.
- Availability Sharing Architecture โ Pipeline details, slot solving algorithms, and security guidelines.
- API Security โ Credentials management and token security specs.
Share Availability ยท ICS Export ยท Break Timer ยท Event Linked Notes ยท Back to Index