CanvasCal reads assignments with due dates straight from Canvas and publishes them as a private feed you can subscribe to from Google Calendar, Apple Calendar, or Outlook.
Assignments only
No clutter
Stays in sync
Re-sync anytime
Token stays local
Never sent to us
How it works
Step 1
Create a Canvas personal access token and connect it to your Canvas URL.
Step 2
Select which courses you want assignment due dates pulled from.
Step 3
Sync generates a private, RFC-compliant .ics calendar link, just for you.
Step 4
Add the feed to Google Calendar, Apple Calendar, or Outlook in one step.
Preview

Paste your Canvas URL and personal access token. Nothing syncs until you confirm.

Toggle which courses to include, sync, and copy your private .ics feed link.

Control how due dates and titles show up on your calendar, down to the wording.
Details
No noise from ungraded pages or announcements, just assignments Canvas says are actually due.
"Assignment (Course)", "Assignment", or "Course - Assignment", pick the format that reads best to you.
Show due dates as all-day events, or keep the exact Canvas due time on the calendar.
Include a direct link back to the assignment in Canvas, or leave it out entirely.
Sync only the courses you care about, toggle any course on or off before syncing.
Hit sync again after Canvas changes and your existing calendar feed link updates in place.
Works with any calendar that subscribes to an .ics feed
Security
Stored only in chrome.storage.local and used for direct browser-to-Canvas requests.
No token, ever. The server only receives the assignment fields needed to build your feed.
Your Canvas token is never placed in a URL or written to logs, by design.
Changelog
Add CanvasCal to Chrome and start syncing your Canvas assignments to your calendar.
Install CanvasCal
Add CanvasCal to Chrome and get your Canvas due dates in the calendar you already use.
Install CanvasCal