SJTU Canvas Helper
A Tauri desktop companion for SJTU Canvas that folds download, preview, upload, assignment, and course-video work into one calmer workflow.
00 · Workflow
The point is not one more button. It is one tighter loop.
This is not just a utility menu. It outlines a desktop workflow where common Canvas chores connect naturally: preview before download, collect assignments before acting on them, and extend course videos into subtitles, screenshots, and study material.
01 · Features
It solves many of the pain points people run into on the web version
-
Download and previewLook first. Save second.
File download, file preview, and archive browsing sit in the same flow. PDFs, DOCX, Markdown, XLSX, code, images, notebooks, and mainstream archive formats such as ZIP, RAR, and 7Z can be inspected before you commit them to disk.
-
Upload and cloud handoffOne less page switch.
For users who move materials between Canvas and SJTU cloud storage, one-click upload compresses the most repetitive step. It is not flashy. It is simply the sort of friction that compounds over a semester.
-
Assignments and deadlinesBring the due date closer.
Viewing assignments, submitting work, grading submissions, editing DDLs, and scanning a deadline calendar belong to one operational thread. Students spend less time drilling through pages; instructors and TAs get a shorter path through submission handling.
-
Course video toolsRecorded classes deserve structure too.
Video download, playback, subtitle download, and screenshot capture merged into PDFs are all framed around the same real task: turning course recordings into something easier to revisit, annotate, and reuse.
-
AI and MCP hooksMore than a GUI shell.
Multi-API-key management and an MCP server are built in. One simplifies access to multiple LLM providers; the other exposes Canvas data through a standard protocol so AI clients can work with it directly.
-
Cross-platform with updatesInstall once, carry less later.
The project is built on Tauri and documented for Windows, macOS, and Arch Linux. Windows users are pointed to the
.msipackage with auto-update support, which makes this feel like a maintained desktop tool rather than a one-off script.
02 · Principles
Its value is not just breadth. It is how the breadth is aimed.
- 1 It starts from recurring frictionDownload, preview, upload, assignments, and recordings are not edge cases. They are the repetitive center of everyday Canvas use.
- 2 Desktop experience comes firstIt uses Tauri to gather these flows into a local application instead of leaving them scattered across browser tabs, helper scripts, and temporary web tools.
- 3 It serves both learning and teaching-side workIt spans student tasks and teaching tasks alike, from file handling to grading and DDL editing, which gives the tool a wider operational center than a downloader alone.
- 4 It leaves room for AI workflowsMulti-key LLM support and an MCP server mean the project can become a bridge between Canvas data and automation instead of stopping at a graphical surface.
- 5 It stays inspectableMIT licensing, GitHub releases, source access, and a visible discussion thread make the project easier to trust, test, and continue improving in public.
03 · Start
You do not need to become a contributor before you can use it well
v3.0.6
Start from GitHub Releases. Windows users are steered toward the .msi package for auto-updates, while macOS and Arch Linux installers are also available.
On first launch, fill in your Canvas Token and choose a download directory.
MIT licensed · Built with Tauri · Install Node.js and Rust, run yarn tauri dev
04 · FAQ
A few useful things to know before you install
- How is this different from using Canvas directly in the browser?
- Canvas remains the source system, but this tool rearranges the repetitive work around it. The payoff is a shorter path through previewing files, organizing downloads, handling assignments, working with recordings, and extending some of that into AI or MCP-based flows.
- Who is it for?
- It is suited for a broad audience inside the same campus workflow: students who deal with course files and submissions, and instructors or TAs who need to review submissions, grade work, or adjust deadlines.
- Which platforms are covered?
- The documented install targets are Windows, macOS, and Arch Linux. Windows users are specifically recommended to use the
.msiinstaller for a smoother update path. - What do I need for first-time setup?
- The first required configuration is your
Canvas Token, plus the directory where downloaded files should be stored. - What does the AI support actually mean?
- The project supports multiple API keys for different LLM providers and can auto-detect providers and pull available model lists. It also includes an MCP server so AI clients can access Canvas-facing capabilities through a standard interface.
- Can I build on top of it or modify it myself?
- Yes. MIT licensed. Install Rust and Node.js, run
yarn tauri dev.
For the raw project source, visit the GitHub repository. For a structure-oriented overview, the project also links to DeepWiki.