Skip to content

pauline2k/suitec

 
 

Repository files navigation

SuiteC

SuiteC is a collection of Instructure Canvas Basic LTI tools, allowing for innovative functionality to be added to any course site. A technical overview can be found in SuiteC architectural diagram (PDF).

Asset Library

The Asset Library is a place where students and instructors can collect relevant materials for the course. The materials can be seen by the other students in the class and can be discussed, liked, disliked, etc.

Whiteboarding Tool

The Whiteboarding Tool allows for students to collaboratively work on whiteboards. Whiteboards can be used to remix assets from the Asset Library, create mindmaps, provide feedback, etc.

Engagement Index

The Engagement Index provides a leaderboard based on the student's activity in the course. The Engagement Index will record activities such as discussion posts, likes, comments, etc.

Set Up Your Dev Environment

Note:

  • These instructions are specific to Mac OS X.
  • Typically, the steps in this section are done only once. The sections that follow (e.g., Install) will be repeated often.

Get the SuiteC source

git clone git://github.com/ets-berkeley-edu/suitec.git

Dependencies

Apache

Apache setup is described in the SuiteC configuration doc.

PostgresSQL

SuiteC uses PostgreSQL. Set up the required database and users:

# Update Homebrew
brew update

# Install postgres
brew install postgresql

# Start postgres
postgres -D /usr/local/var/postgres

# Create a database and user
createuser collabosphere --no-createdb --no-superuser --no-createrole --pwprompt

Enter password for new role:  collabosphere
Enter it again:  collabosphere

createdb collabosphere --owner=collabosphere
createdb collabospheretest --owner=collabosphere

Node

Ensure you have the following packages installed and available in your ${PATH}:

  • Node.js
  • NPM
  • Cairo and all its dependencies. On RHEL systems the following packages have to be installed:
    • cairo
    • cairo-devel
    • cairomm-devel
    • libjpeg-turbo-devel
    • pango
    • pango-devel
    • pangomm
    • pangomm-devel
    • giflib-devel

Check out the node-canvas installation wiki for more information.

Optional: Set explicit PKG_CONFIG_PATH in your BASH .profile per, for example, X11 installation:

export PKG_CONFIG_PATH=/opt/X11/lib/pkgconfig

Configure SuiteC

Instructions on configuring SuiteC

Install and run SuiteC

In your development environment

npm install
node app

On the network

Read instructions on deploying SuiteC on a network server.

Notes

Canvas synchronization

By default, SuiteC will poll the Canvas API for any new activities that are included in the engagement index. Whether polling should be enabled and how often it should run can be configured in the canvasPoller section of the configuration file.

Configure a Canvas API key for a user, preferably a global Canvas administrator, that is able to list the:

  • users
  • assignments and all their submissions
  • discussion

Production build

The production build will:

  • Concatenate and revision all vendor files (AngularJS, Bootstrap, etc.)
  • Concatenate and revision all application JavaScript files
  • Concatenate and revision all CSS files
  • Concatenate and revision all HTML fragments
  • Optimize and revision images
  • Replace all references to any changed assets in the index.html file.

A build can be generated by running gulp build.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 89.2%
  • HTML 6.3%
  • CSS 4.5%