Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Canvas by Instructure!
Canvas is a well-established (circa 2010, used in many colleges, universities, and K-12 schools), open-source LMS by Instructure Inc. It is released under the AGPLv3 license for use by anyone interested in learning more about or using learning management systems.
Our dev & friends site is a great resource for getting started in developing on Canvas itself, using the Canvas APIs, or creating well-integrated 3rd party tools.
Are you looking for one of our commercial subscriptions, professional services, support, or our hosted solution? Please visit our main website.
Trying Out Canvas
If you'd like to use Canvas in your own course, or you just want try Canvas out, there is no need to do all the work of installing it yourself. Canvas Cloud is free for teachers to use, just sign up to get started.
If at a later time you do want to migrate from your own install to Canvas Cloud, or vice versa, you can use the course export and import features to migrate all your content.
- You can post a message or participate in our user group mailing list.
- You can join #canvas-lms on Freenode and talk to the community.
- You can read one of our tutorials (below).
- You can read our FAQ.
- You can visit our general Canvas usage support portal.
- You can visit our Vimeo Channel.
- You can read our API docs.
In order for us to continue to dual-license our Canvas product to best serve all of our customers, we need you to sign before we can accept a pull request from you. After submitting a pull request, you'll see a status check that indicates if a signature is required or not. If the CLA check fails, click on Details and then complete the web form. Once finished, the CLA check on the pull request will pass successfully. Please read our FAQ for more information, and be sure to review the Coding Guidelines.
To save yourself a considerable headache, please consider doing development against our master branch, instead of the default stable branch. Our stable branch is occasionally reforked from master, so your Git history may get very confused if you are attempting to contribute changesets against stable.
If you would like to contribute a translation change, please submit it through our translation service Transifex.
See CONTRIBUTING.md for additional details on contributing.
We take security very seriously. Please do not submit issues or pull requests for security issues. Instead, you can email firstname.lastname@example.org and we will respond as soon as possible. You can watch for security advisories to update your Canvas installation on our Security Notices forum.
- Quick Start
- Production Start
- Troubleshooting your Canvas installation
- Integrating Canvas with other systems
There are two primary ways to get a copy of Canvas LMS
You can install Git on Debian/Ubuntu by running
$ sudo apt-get install git-core
Once you have a copy of Git installed on your system, getting the latest source for Canvas is as simple as checking out code from the repo, like so:
~$ git clone https://github.com/instructure/canvas-lms.git canvas ~$ cd canvas ~/canvas$ git checkout --track -b stable origin/stable
Using a Tarball or a Zip
You can also download a tarball or zipfile.