ShawnSomething18 downloadsInteractive Google Calendar sidebar for Obsidian with multi-account support.
An interactive Google Calendar sidebar for Obsidian. Multiple accounts, bi-directional sync, drag to move, accept/reject invites.
Desktop only.
You need your own GCP credentials. This keeps your tokens local to your machine and off any third-party server.

obsidian-gcal-sidebar) → Create



obsidian-gcal-sidebar), your email for both support and developer contact fieldsobsidian-gcal-sidebar) → Create
main.js, manifest.json, and styles.css from the latest release<your vault>/.obsidian/plugins/gcal-sidebar/You will see a Google warning. This is expected — the app is running under your own GCP project, which hasn't gone through Google's verification process.
Click Advanced → Go to [app name] (unsafe) to continue. Your credentials stay on your device and are never sent or saved anywhere other than Google's own servers.
Repeat steps 3–7 for each additional Google account. All accounts appear in the same calendar view.
Click the calendar icon in the left ribbon, or use the command palette: GCal Sidebar: Open Google Calendar.
Defaults — all remappable in Settings → Hotkeys. They are all set to none as a default, please feel free to set them up as you prefer
| Action | Default |
|---|---|
| Open calendar | none (set one in Hotkeys) |
| Day view | none |
| 3-day view | none |
| Week view | none |
| Jump to today | none |
| Refresh | none |
| Previous | none |
| Next | none |
Click an empty time slot to create a new event. Click and drag to set the duration. Fill in the details and save.
Click any event to open it. Edit title, time, guests, location, description, or recurrence.
Drag an event to a new time. Changes sync immediately.
Click an event → use the Yes / Maybe / No buttons at the top of the modal.
Click the grid icon in the header to open the calendar list. Toggle any calendar on or off. Use the ↗ button next to an account to open it in Google Calendar.
data.json fileEvents not loading Try the refresh button (↻) in the header. If that doesn't work, check that your Client ID and Secret are correct in settings.
"This app isn't verified" keeps showing This is normal for self-hosted GCP projects. Just click Advanced -> Continue to proceed
Port already in use The plugin tries ports 42813–42817 for the OAuth callback. If all five are blocked, the auth flow will fail. Free up one of those ports and try again.
Calendar stopped syncing Your access token may have expired and failed to refresh. Remove and re-add the account in settings.
MIT