https://github.com/wznmickey/canvas_syncer
An async rust program that synchronizes files and folders across Canvas LMS Files and local, with extremely fast speed.
https://github.com/wznmickey/canvas_syncer
canvas canvas-lms canvas-lms-api rust-lang
Last synced: 3 months ago
JSON representation
An async rust program that synchronizes files and folders across Canvas LMS Files and local, with extremely fast speed.
- Host: GitHub
- URL: https://github.com/wznmickey/canvas_syncer
- Owner: wznmickey
- License: mit
- Created: 2024-03-30T09:07:33.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-02-19T06:21:03.000Z (4 months ago)
- Last Synced: 2025-03-25T18:45:47.377Z (3 months ago)
- Topics: canvas, canvas-lms, canvas-lms-api, rust-lang
- Language: Rust
- Homepage:
- Size: 146 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README
- License: LICENSE
Awesome Lists containing this project
README
Source code location: https://github.com/wznmickey/canvas_syncer
Features:
1. Support to download files accessable in file section as well as the files in assignments and modules and maintain the structure.
2. Support to filter courses and terms. (File size and type coming soon)
3. Support to monitor changes in files and update them.
4. Support to operate on more than one Canvas system.
5. Support to download with multiple threads.Plan to implement Canvas-Syncer (https://github.com/BoYanZh/Canvas-Syncer) in rust to gain higher readability and extension.
Roadmap:
1. use blocking to complete basic functions (finished)
2. switch to async (finished)
3. support features(i.e. file filter, detail downloading config) (partly)
4. allow uploadingAn async rust program that synchronizes files and folders across Canvas LMS Files and local.
Check `config.json.example`.
The default config file is `./config.json` and you can use `--config` to set its path.
You can use use cargo to install this program.
You can also directly use the compiled file in github releases in https://github.com/wznmickey/canvas_syncer/releases .