// the find
instructure/canvas-lms
The open LMS by Instructure, Inc.
Canvas LMS is the open-source core of Instructure's commercial learning management system, a Ruby on Rails monolith that handles courses, grading, assignments, and LTI tool integration for schools and universities. It's for institutions or vendors building on top of an LMS, or engineers curious how a production-grade EdTech platform is actually built, not for anyone wanting a quick side-project base.
The LTI implementation is unusually thorough — IMS Advantage services, deep linking, asset processors, dynamic registration are all first-class, which matters because LTI compliance is where most homegrown LMS efforts die. It's genuinely running in production at thousands of institutions, so the auth providers (SAML, CAS, LDAP, OAuth2, Clever, Microsoft) and grading edge cases are shaken out by real use, not theory. The .claude/ directory with agent configs and skills for migrations, gem updates, and RSpec suggests they're actively tooling up their own Claude-assisted workflow, which is a live signal of how they maintain a codebase this size.
This is not a repo you clone and run — the sprawl of Dockerfile.jenkins.* variants and Jenkinsfile.* per test type (selenium, crystalball, dynamodb, axe, rspecq) tells you the real CI/dev setup is bespoke Instructure infrastructure, not something reproducible from what's checked in. The README is three sentences pointing at an external wiki, which is a bad sign for a project this large — there's no in-repo architecture doc for a controllers directory alone running into the hundreds of files. AGPLv3 means anything you build against this as a library rather than a standalone deployment likely needs to be open-sourced too, which rules it out for a lot of commercial use cases outsiders might assume are fine.