The Instructure Community will enter a read-only state on November 22, 2025 as we prepare to migrate to our new Community platform in early December. Read our blog post for more info about this change.
Found this content helpful? Log in or sign up to leave a like!
Some schools allow students (1) to start programs of study on individualized start dates, and (2) to pursue these programs full-time or part-time. Acme Career School (fictitious), for example, offers an 800-hour Clinical Medical Assistant (CMA) program consisting of 8 x 100-hour courses where each course includes 10 assignments. Students can start the CMA program on the first or third Monday of any month, and they can pursue the program at a rate of 24 or 12 hours per week. The program is organized so that students can interact with other students in various ways, but each student has an individualized set of due dates for the 80 assignments in the program, dates that can change due to student leaves of absence. Thankfully, Canvas accommodates individualized due dates, but Canvas does not deal with this scenario at scale. Consider these use cases:
I am exploring solutions to these use cases. Do you have similar use cases? What solutions have you tried? Thanks.
We have developed an in-house app called Easel that enables us to add supplemental functionality to Canvas including the ability to assign individualized due dates. Here is a quick demo of this features:
Wow, nice! What technologies did you use to create Easel?
Hi Daniel, Easel front-end is a single-page app based on jQuery, Bootstrap, and a few other usual suspects. The Easel back-end is a REST API, PHP middleware, and MySQL.
Very cool! Have you thought about doing a https://community.canvaslms.com/community/ideas/canvaslive?sr=search&searchId=1c3e1168-cec1-476f-a34... demo of this? I think others in the Community would love to see this demo'ed!
Hi Kona, Yes, one of the Canvas Coaches suggested I consider doing a demo. This video is a test balloon to determine interest. Thx.
Oh my gosh, I am INCREDIBLY interested in this: one of my biggest struggles is getting students to set their own schedules (I teach online), and right now I rely on emails generated out of an GoogleSheet right now to send reminders to people who are not following my default due dates in Canvas. I ask my students to commit to six hours per week, and they tell me about that via a Google Form... but right now I don't have any way to make that intersect with Canvas Calendar. I just put reminders to myself in the GoogleSheet generated by the GoogleForm that tell me to send reminders to students when their new week starts, based on their schedule (week might start on ANY day of the week).
So, yes, I am VERY curious about this. I gave up trying to use Canvas to help my students with scheduling when I found out they could not create recurring events in the Canvas calendar right now. Even if I cannot use your Easel exactly for my purposes, it might give me some good ideas to find solutions. I'm eager to learn more.
Thanks, Laura. My school supports both cohort-based and self-paced students. Canvas already does a great job with the former, so I am focused on collecting use cases and adding functionality to support the latter. Would you mind describing your use cases that Canvas does not handle right now? Thx.
Absolutely! I need to review how that's going so far this semester anyway, so I'll write it up in a way that will hopefully document my approach in a way that is useful for you. I'll ping you when I have that done. Time management is the single biggest barrier to student success that I see, so I'm really glad you are working on this aspect of the Canvas system: thank you!
Yes! Yes! Yes! Please develop this further! Every Independent Study program could use this!
(Can you tell I'm excited for this? :smileylaugh:)
Thanks, Mike. Would you describe some of the use cases (related to independent study) that Canvas does not handle very well yet? I appreciate your help. -Matt
Open entry courses (sometime called rolling enrollment.) For example, when some students enroll in January and some in Feb and some in Mar. They all have n months to complete the course, so they would all need different due dates throughout the course. This is just an example of different enrollments per months, but why make a student wait until the first of the month to start a course? If they want to get started today, then strike while the iron is hot. Enrolling the student and letting them get started today is not possible right now without custom development. Your tool is the custom development that would fill that need.
Does that help?
Thanks for this description. Your use case is very similar to ours. I'll keep you in the loop as I continue to broaden Canvas capabilities to better serve self-paced students. -Matt
I'm in k-12 education (I specifically work with 7-12, but this issue applies more generally within k-12), and our major driver of custom due dates would be students on an IEP or 504, which are both parts of US education law that lead to some students with disabilities having custom education plans that given them certain accommodations in their courses.
A common accommodation within such plans is for a student to be allowed to turn n work "x" days late. For example, Stu Dent might be on an IEP that states that he can turn in all work up to one week late, or Ex Ample might have it written into her plan that she can turn in all assignments through the last day in the term. Right now, I would rely on Stu Dent's case manager to email me so I can manually give him a new due date each time he needs one, or for Ex Ample to send me a message letting me know which assignments she needs re-opened. (Theoretically, I might go in and add this exception by hand to all assignments in the course for all such students, but that does not scale well, so in practice we tend to do upon request instead of by default, which would be preferable.)
So, settings we might use would be things like "change all of Stu Dent's 'open until' dates to be exactly two weeks later than the 'everybody else' open until date" or "change all of Ex Ample's 'open until' dates to be Specific Date".
Another common use case for us would be students who enroll a week or two late. It would be be nice to have the option to either "compress" all due dates and 'open until' dates within a specified range for a late start student (for example, for a student who started the second week of the term to have the work from weeks 1, 2, 3, and 4 re-distributed to be due in weeks 2, 3, and 4 so they'd have 3 weeks to get 4 weeks of work done and be caught up). It would also be useful,and much simpler to implement, to be able to simply set all of their "open until" dates for assignments within the first x days or weeks to a specific later date to give them that catch-up time without the structure of custom due dates.
This is our first year using Canvas, and I have not yet had time to look at the API and existing tools to determine which automated tools we should be using, so right now we're doing all of this by hand through the web interface. I was planning to research automation/batch processing tools over the summer after I better understand the workflow of using Canvas and how settings interrelate with each other. (For example, I just got bit by the fact that the multiple grading periods feature needs all assignments to have due dates, not just close dates, in order to function. I'd prefer to learn as many of those quirks as possible before spending time on automation so the automated solution does not create such issues.)
Thanks, Linnea, for taking the time to describe these use cases so thoroughly. I hadn't thought of the "compress" use case, but I can see the need. Best of luck with Canvas this year! It's my school's first year with Canvas, too - learning on the job.
Hi Linnea, Have you by chance found a solution to this? We are dealing with needing to give extended time to quite a few of our 504 students and are dying to find a way to make the individualized/exception due dates. Thank you so much for sharing what you have found, if anything! ![]()
Nicole,
Unfortunately, I have not found a good way to do this yet. The work-around I have found so far are:
I really don't feel like either of these solutions are "good enough", but that's all I've found so far (we just started our second semester with Canvas, so there may be things I am not aware of).
I also give all of my students a "available until" date that is two weeks later than the due date in my own classes for most assignments, so I have fewer adjustments to make since many IEPs and 504s specify a shorter amount of extra time than I already embedded in my course (partially to have less editing to do for my IEP and 504 students, and mostly so I can spend less time playing Excuse Police with occasional late assignments for all students as long as they stay mostly on track in the course).
Thank you, Linnea! Not ideal, I agree, but I really appreciate you taking the time to share your work-arounds! Thanks so much!
Hi Linnea, I experimented with solving one of your use cases, the one where you need to add a certain number of days to individualized due dates. You can see this solution in the second of the four videos posted here.
Hi All, I have created a new discussion called Use Cases for Managing Independent Study as a place to share scenarios and uses cases related to managing students who, in one form or another, study independently. Thx.
Hi Matt,
We have a CBE environment that I think Easel might work for. Is it available to the community?
Hi Michael:
Easel is open source. See https://github.com/hagenhaus/easel. Note especially the README.md file. Thx.
Community helpTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign inTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign in