An Apereo Foundation Project
Building LTI apps to fill LMS gaps.
A collaborative open-source community developing high-quality, LMS-agnostic LTI tools — empowering universities to move faster than vendor roadmaps and address custom teaching and learning needs together.
The enterprise LMS has become monolithic — mission-critical, yet difficult to modify. Innovation around niche teaching needs has shifted toward LTI app development. But institutions often work in silos, building solutions that already exist elsewhere. LTI Forge connects those teams, providing a shared space to collaborate in a standards-based environment.
Production-ready tools for features missing or under-optimized in platforms like Canvas, Blackboard, Brightspace, Moodle, and Sakai.
Strict adherence to 1EdTech LTI standards ensures cross-platform compatibility — no vendor lock-in, works wherever LTI is supported.
One university builds a solution, others contribute and sustain it — reducing duplicated effort and turning siloed code into shared infrastructure.
| Repo | Description | Type | Language | Runtime | Frameworks | Year | License |
|---|---|---|---|---|---|---|---|
| lti-forge.github.io | Central hub and project directory for the LTI Forge community. | Hub | TypeScript | Deno | Lume | 2026 | MIT |
| canvas-api | Java library for interacting with the Canvas LMS API. | Library | Java | JVM | 2026 | LGPL-3.0 | |
| spring-security-lti13 | A LTI 1.3 implementation for Spring Security that builds on the OAuth2 support. | Library | Java | JVM | Spring | 2026 | Apache-2.0 |
| spring-security-lti13-demo | Demo application showing the spring-security-lti13 library in action. | Example | Java | JVM | Spring | 2026 | Apache-2.0 |
| canvas-spring-oauth2 | Supporting classes for using Spring Security OAuth2 with Canvas. | Library | Java | JVM | Spring | 2026 | Apache-2.0 |
| lti-launch | Spring Security support to authenticate using LTI Launch (1.1), primarily for Canvas. | Library | Java | JVM | Spring | 2026 | LGPL-3.0 |
| lti-demo | Demo use of the lti-launch project. | Example | Java | JVM | Spring | 2026 | None |
| tool-support | An LTI Launch server and JWT-authenticated proxy server, with OAuth2 token management to Canvas. | Tool | Java | JVM | Spring | 2026 | MIT |
| calendar-import | LTI tool that allows Calendar Events to be imported into a Canvas calendar. | Tool | Java JavaScript | JVM Node | Spring React | 2026 | MIT |
| account-reports | Presents links to useful Canvas reports. | Tool | JavaScript | Node | React | 2026 | MIT |
| visit-subaccount | Presents links to a course's parent subaccount. | Tool | JavaScript | Node | React | 2026 | MIT |
| sub-account-browse | React frontend for viewing Canvas sub-accounts. | Tool | JavaScript | Node | React | 2026 | None |
| ui-lti | LTI components for Instructure UI. | Library | TypeScript JavaScript | Node | React | 2026 | MIT |
| lti-auto-configuration | A set of scripts to auto-provision LTI tools to Canvas. | Library | JavaScript | Node | 2026 | MIT | |
| lti-13-example | Sample LTI 1.3 tool that requires a server to handle the LTI launch. | Example | JavaScript | Node | React | 2026 | MIT |
Participation is open to any educational institution or developer committed to the mission. Whether contributing code, documentation, or simply adopting a tool — we want to hear from you. Contact the LTI Forge PMC or Community Manager to request access.