Hi @training4 ,
Great question, I have never seen this done specifically, however, that is not to say that it is not possible. I could see a couple of possible routes:
Option 1:
Using the API you could use Assignments - Canvas LMS REST API Documentation (list assignments for user), then use Submissions - Canvas LMS REST API Documentation (get single submission) looping through the assignments for the user. Then you could use this to build up the progress for a student.
Pros: it will pull realtime informaiton
Cons: It may take time to build up the list (in a measure of seconds or tens of seconds, possibly longer).
Option 2:
Using Canvas data I *believe* you would be able to do this as well. I will admit, I do not have experience with Canvas Data (yet!), but someone here may be able to assist you further.
Pros: You could do this in bulk on a daily basis for example
Cons: Data will be anywhere up to 36 hours out of date, pre-processing ahead of time could be system intensive, so you may want to do this on demand also.
Both options:
Both options could then be served up using LTI to the student, you could use single-sign-on and then process and serve up the student's progress.
I would be incredibly curious to see what you drum up in this area, would be an awesome LTI tool!
Hope that helps, please let me know if you have any questions!
Stuart