Skip to content

Developed by LTHub (Justin Lee) Outputs Canvas discussions as a CSV for specified course.

License

Notifications You must be signed in to change notification settings

saud-learning-services/canvas-discussion

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JavaScript Style Guide

Canvas Discussion

This project pulls via the Canvas API the discussions from the specified Canvas course and exports it as CSV. The columns exported are:

  • 'author_id',
  • 'author_name',
  • 'post_id',
  • 'post_parent_id',
  • 'discussion_topic_title',
  • 'discussion_topic_message',
  • 'post_message',
  • 'count_of_likes',
  • 'timestamp'

Getting Started

These instructions will get you a copy of the project up and running on your local machine for use with your own API tokens and Canvas domains.

Prerequisites

  1. Install Node 10 or greater.
  2. Install Git.

Installation and execution of script

  1. Clone this repo. git clone https://github.com/ubccapico/canvas-discussion.git
  2. Then cd into the repo. cd canvas-discussion
  3. Run the installation script. npm install (If you see babel-node: command not found, you've missed this step.)
  4. Generate Canvas API token and copy it to clipboard.
  5. Create a .env file.
  6. Add the following: CANVAS_API_TOKEN={YOUR API TOKEN} and CANVAS_API_DOMAIN={YOUR API DOMAIN}. An example CANVAS_API_DOMAIN is https://{school}.instructure.com/api/v1
  7. Add your course ID to index.js, where it says: //{course id} add course ID here!
  8. Run the script. npm start.
  9. An output.csv file should be generated with discussion data in the output folder.

Authors

License

This project is licensed under the GNU General Public License v3.0.

About

Developed by LTHub (Justin Lee) Outputs Canvas discussions as a CSV for specified course.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%