Skip to main content

Synchronise a local folder with one in a Canvas LMS course

Project description

Canvas LMS folder sync

This is a command-line tool and Python package to synchronise a local folder with one in a Canvas LMS course.

In order to use this, you need a Canvas API token linked to an account which has permission to create files in your target course's Files section. See the Canvas API documentation for instructions on how to get a token.

Installation

Python 3.8 or newer is required.

To install the package, run:

pip install canvaslms_sync

This provides a shell command canvas_sync.

Usage

canvas_sync local_folder remote_url -t CANVAS_API_TOKEN

You can store your Canvas API token in a file like this:

[Canvas]
canvas_api_token = TOKEN

By default, the script looks for this file in credentials.ini in the current working directory, but you can specify a different path with the -c option.

Hidden files and folders (those whose names start with .) are ignored by default. You can include them with the --include-hidden option.

Development

I followed the Python packaging tutorial to make this package.

To build this package, you need twine and build:

python3 -m pip install twine build

First, build the distributable files:

python3 -m build

That produces .tar.gz and .whl files in ./dist. You can try installing the package in a different virtualenv with pip install dist/canvaslms_sync-$VERSION-py3-none-any.whl.

To upload to PyPI:

python3 -m twine upload --repository pypi dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

canvaslms-sync-1.0.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

canvaslms_sync-1.0.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file canvaslms-sync-1.0.0.tar.gz.

File metadata

  • Download URL: canvaslms-sync-1.0.0.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for canvaslms-sync-1.0.0.tar.gz
Algorithm Hash digest
SHA256 91d95275bf13bceb8fb4868a6c193dca2c55530692cfc45000cb1c7bdcbaaaa6
MD5 5015ec11fd1c05fec7e43e5b2c76b1c7
BLAKE2b-256 ba60a613e86c20a5b4b7e8c6b856f8fbde8764df9b9fcf6bfbe69865ec004a73

See more details on using hashes here.

File details

Details for the file canvaslms_sync-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: canvaslms_sync-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for canvaslms_sync-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 56aae97e6db6075d19b9e8b23b9e80df3dcaf11323214697b9265ecd5c101f5b
MD5 c45b5a46ee7800b38ef8f960e9522b06
BLAKE2b-256 0b344304a3abd1360b32f62348f7955191251213849e8dac428c006d605ee634

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page