The Canvas SDK
Get started #
Here are some step-by-step guides to get you started:
This guide steps you through installing the Canvas SDK, creating a plugin, and deploying it to a Canvas instance.
Make automatic API requests based on Canvas events
Add your own logic to surface the right options with the appropriate context
What is the Canvas SDK? #
The Canvas SDK is your toolkit for customizing workflows natively across the full Canvas platform: scheduling, charting, billing, and more. It is a python package used to develop and deploy plugins, which then run in this open source runtime environment on your Canvas instance.
Plugins, the custom packages you author with the Canvas SDK, run in a sandboxed process directly on the Canvas instance. The Canvas application emits many events at runtime, which you can choose to respond to and produce some number of effects. These effects are then interpreted by the Canvas application, which applies the changes your plugin returned. Events are accompanied by contextual information, and your plugin has access to additional information through the data module, which exposes a subset of the Canvas application database through a series of Django ORM classes backed by read-only views.
Where can I get additional help? #
Our open-source GitHub repo has a discussions section, where you can request help or suggest improvements. We also welcome issue reports and pull requests!
Ready? Get started!