Skip to content

Okabe-Rintarou-0/SJTU-Canvas-Helper

Repository files navigation

SJTU Canvas Helper

还在为下载学生上传的大量压缩包而苦恼吗?

SJTU Canvas 小帮手基于 Tauri 开发,助您更便捷地使用交大 Canvas。 参与讨论:水源社区

安装指南

基础安装

  1. 前往 Release 页面下载并安装一次即可,后续主版本更新将自动拉取,无需重复下载

  2. Windows 系统

    • 推荐下载 .msi 安装包,支持自动更新功能
    • 也可选择免安装便携版:SJTU.Canvas.Helper_v_x.x.x_x64_portable.zip
  3. MacOS 系统

    • 下载对应版本安装包
    • 若遇到打不开的问题,可参考 在 Mac 上安全地打开 App
    • 若显示已损坏,尝试执行以下命令:
      cd /Applications 
      sudo xattr -r -d com.apple.quarantine /Applications/SJTU\ Canvas\ Helper.app
  4. Arch Linux 系统: 通过 yay 从 AUR 安装:

    yay -S sjtu-canvas-helper

首次配置

安装完成后,请前往设置页面填写您的 Canvas Token 以及文件下载保存目录。

致谢

感谢以下用户为本仓库做出的贡献:

xeonliu
xeonliu

💻
creeper12356
creeper12356

💻
PangBo
PangBo

💻
Yiting Wang
Yiting Wang

💻
Yuxuan Sun
Yuxuan Sun

💻
Yuxuan Ying
Yuxuan Ying

💻
LY
LY

💻

Main Features

  • 文件下载 / 预览(免下载) / PDF & PPTX 混合合并(免下载)
  • 一键上传交大云盘(新)
  • DDL 日历
  • 人员名单导出
  • 查看/提交作业
  • 批改作业/修改作业 DDL
  • 支持密院和本部 canvas 系统
  • 视频下载/播放/字幕下载/截图抓取合成PDF
  • 自动更新

文件下载/预览

采用类似 macOS Quick Look 的预览体验:

  • 按下空格打开预览
  • 再次按下空格关闭预览
preview.mp4

支持预览主流压缩文件(7z, zip, rar...)

支持的文件预览格式

文件类型 格式 支持状态
文档 PDF
文档 DOCX
文档 Markdown
表格 XLSX
代码 多种编程语言代码(见说明)
图片 PNG, JPG, JPEG, BMP, GIF, TIFF, SVG, ICO, WEBP, AVIF
笔记本 IPYNB (Jupyter Notebook)
压缩包 ZIP, RAR, 7Z 等主流格式

代码文件支持说明: 支持多种编程语言代码预览,包括但不限于:C/C++, Java, Python, JavaScript, TypeScript, Go, Rust, PHP, Ruby, Swift, Kotlin 等。详细支持列表请参考 highlight.js 支持的语言

文件一键上传交大云盘

课程录屏播放/下载

查看课程作业

学生提交作业查看/批改/修改 DDL

输入合法的分数,然后按下回车;如果想撤回分数,则清空输入框,再次按下回车。

开发指南

配合 AI 理解项目框架:https://deepwiki.com/Okabe-Rintarou-0/SJTU-Canvas-Helper

开发环境搭建

  1. 安装 Rust 开发环境

  2. 安装 NodeJS

    • 安装后将自动包含 npmyarn 包管理器

启动项目

yarn tauri dev

# 如果支持 make
make dev

调试说明

Tauri 基于 WebView 构建,可按以下方式打开开发者工具:

  • MacOS: 按下 ⌘ + ⌥ + i 打开控制台
  • Windows: 按下 Ctrl + Shift + i 打开控制台

Star History

Star History Chart

About

SJTU Canvas Helper——帮助您更快速便捷地使用上海交通大学课程平台。

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors