Cue for Canvas
macOS menu bar app · Swift, SwiftUI (first built in Electron, React, TypeScript) · 2026 to present · In development, coming to the Mac App Store
The question
In one week I missed three assignments in different classes. I just never opened Canvas to check. The tools I tried only worked with Canvas open in a browser. I wanted my deadlines to come to me, without opening Canvas or Safari at all.
Website: cueforcanvas.com
Version 1: Canvas Companion
I first built the app as Canvas Companion, using Electron, React, and TypeScript.
- Synced with the Canvas REST and GraphQL APIs to pull assignments, submission status, and deadlines, and refreshed whenever the Mac woke from sleep
- Sent a notification for each deadline, with lead times you could set and no duplicate alerts
- Grouped work by urgency (Overdue, Today, Tomorrow, This Week, Coming Up), with a fuse.js command palette for searching
- Security: context isolation, sandboxing, and a strict CSP. The access token lived in the macOS Keychain. Core logic had Vitest unit tests.
I wrote the PRD and TRD and pitched UW IT Learning Technologies on licensing it for UW's 35,000+ students. They liked the work. Then the May 2026 Canvas security incident hit, and UW revoked API tokens for all students. They said they would not issue new ones for now, citing security and privacy risks, and pointed me to Instructure's developer program.
The lesson: turning a personal tool into something a whole institution can run is a different problem from writing the code.
Canvas Companion code: github.com/AaravChhabra13/Canvas-Companion
Version 2: Cue
I did not want to wait on a university to approve it, so I aimed for real users instead. I rebuilt the app natively in SwiftUI and renamed it Cue so I can ship it on the Mac App Store.
- Native macOS menu bar app, rebuilt from scratch in Swift
- Works without a university-issued API token
- Plan: TestFlight with UW students first, then the App Store
Where it stands
- The SwiftUI rebuild is done and running on my Mac
- Next: App Store setup, then a TestFlight beta with students
- Cue's code is private while I prepare it for the App Store
Future possibilities
Cue is Mac only for now. A Windows version is the natural next step, so students on any machine get the same thing: deadlines that come to them.