• Build a Canvas Data Warehouse on AWS in 30 minutes!

    Introduction Canvas Data provides a wealth of information that can be used in many interesting ways, but there are a few hurdles that can make it hard to even get started: The Canvas Data API uses a different au...
    Colin Murtaugh
    last modified by Colin Murtaugh
  • ChatBot

    So I thought I would try to make a ChatBot for Canvas to add to our staff EdTech Help canvas course.   I had come across a number of posts and ideas mentioning this a way back - this one in particular from Sonya...
    Gideon Williams
    last modified by Gideon Williams
  • Design Challenge: Capturing the Essence and Ethics of Critical Topics

    In creating a course called Intro to Pharmacy Technician, I was privileged to work with the Department Chair who was also the subject matter expert (SME), and the chief instructor.    My SME was doubtf...
    Rachael Sweeten
    created by Rachael Sweeten
  • Remote-itis: Digesting the Strengths and Missed Opportunities of Online Ed

    Caution My comments may sound critical of teachers, so I want to clarify that I am a higher ed instructor and this the community I strive to serve. I am also an instructional designer, user testing professional,...
    Rachael Sweeten
    created by Rachael Sweeten
  • Managing Canvas Data with Embulk

    Embulk is an open-source bulk data loader that helps data transfer between various databases, storages, file formats, and cloud services. embulk.org github contributors   Simply put, Embulk makes&...
    Robert Carroll
    created by Robert Carroll
  • How to Upload an Assignment via API using Powershell

    You will require the following variables set up accordingly. Values such as $USERID, $COURSEID and $ASSIGNMENTID can be obtained from the API or looking at link URLs in the Canvas web interface.   >> $token...
    Benjamin Selby
    last modified by Benjamin Selby
  • Implementing OAuth in an ASP.NET Core 2.2 MVC web app

    We've been working for a while on leveraging the Canvas API to work with other systems for particular learning use cases. We're developing a middleware app using ASP.NET Core MVC to manage the integrations.  ...
    Mark Smithers
    created by Mark Smithers
  • Duplicate Course Enrollments with Python

    While schools are closed, we've moved much of our long term staff development material into Canvas. We have one long-running course with all staff split into site-based sections that has worked as a model for others. ...
    Brian Bennett
    created by Brian Bennett
  • CATME (or other) Automated Team Upload

    I've developed a tool I wanted to share here.  I teach multiple sections of a course with up to 72 students per section.  I typically merge all sections of my course into a single canvas site.  This wor...
    David Gray
    created by David Gray
  • Get a List of Students and Missing Work

    In a Canvas course, you can quickly check the number of missing assignments for single students relatively quickly. You can also message groups of students missing specific assignments from the analytics page (or the ...
    Brian Bennett
    last modified by Brian Bennett
  • Online Ed Inspiration: Goldfish

    The size of the goldfish is determined by the size of the bowl.    *Ok. Scientifically-speaking this is probably due to poor water quality rather than a mysterious spatial awareness.   I like to t...
    Rachael Sweeten
    created by Rachael Sweeten
  • Update Student Notification Preferences with Python

    This post was originally published on my own blog.   In moving to online, we've tried to streamline all of our communication through Canvas. The goal is to cut down on disconnected email threads and encourage st...
    Brian Bennett
    last modified by Brian Bennett
  • Is Online Learning Right for Me? (Student Self-Evaluation)

    The rising popularity of online college courses creates new opportunities for completion and success. Unfortunately, more students who sign up for online courses also fail or wash out!  Students and instructors&#...
    Rachael Sweeten
    created by Rachael Sweeten
  • Unpack Those Docs!* Best Practices for Course Design

    *You'll be glad you did.   In providing support for faculty and courses, certain best practices have been validated repeatedly.  One of those is optimizing Canvas content pages to increase the likelihood ...
    Rachael Sweeten
    created by Rachael Sweeten
  • Ready Made Canvas Templates - Github

    Hello      I have started to design ready-made canvas design templates for courses. This project I have started as an Open-Source code under MIT (which means free). and anyone can use this. I would lov...
    Rukshan Fernando
    last modified by Rukshan Fernando
  • API Use Case: Standardize Course Navigation

    When we were researching LMS platforms, one piece of feedback that really struck me as being obvious was course navigation.  What we found was consistent feedback from users who were frustrated that finding resou...
    Garth Egbert
    last modified by Garth Egbert
  • Creating an Index

    To follow up on my earlier question in Generating an index and permitted attributes for <span> this blog post contains some more information about generating an index from the pages in a Canvas course....
    Gerald Q. Maguire
    last modified by Gerald Q. Maguire
  • Module Filters

    Disclaimer: This is a personal project, and is not endorsed by Instructure or Canvas LMS. Custom JavaScript must be maintained by the institution. Most (great) product features come from a deep understanding...
    David Lyons
    last modified by David Lyons
  • How to Move User Roles and Enrollments via Python

    This blog describes how to move user enrollments from one role to another using a Python class, SQL data, and a mapping file.  So here is the situation we are presently facing at Everett Public Schools...
    David Passey
    last modified by David Passey
  • Java library for accessing the Canvas API

    The Java development team here at Kansas State University started our Canvas adventure off with some questionable decisions. We were originally just going to write a couple of simple LTI applications. Of course the sc...
    Tobias Murray
    created by Tobias Murray