PHP library for LTI 1.3 Core implementations as platforms and / or as tools.
$ composer require oat-sa/lib-lti1p3-core
You can find below the implementations of the main concepts of the LTI 1.3 Core specification.
- Platform: any kind of platform that needs to delegate bits of functionality out to a suite of tools.
- Tool: external application or service providing functionality to a platform.
- Registration: defines the scope of contexts under which a tool is made available for a platform.
Messages represent integration between platforms and tools intermediated by a user's browser.
- Lti Message: reference to an exchange between platforms and tools in message based communications.
- Lti Message Payload: reference to the payload (JWT) of an exchange between platforms and tools in message based communications, containing LTI claims.
- Lti Resource Link: reference to a resource made available from a tool for a platform.
- Lti Launch: refers to the process in which a user interacts with an LTI Resource Link within the platform and is subsequently "launched" into a tool.
Services represent direct connections between platforms and tools.
You can find below some tutorials, presented by topics.
- how to configure the library
- how to implement the library interfaces
- how to expose a JWKS endpoint
- how to handle a LTI resource link launch (with OIDC)
- how to set up a LTI service server
- how to use the LTI service client
To run tests:
$ vendor/bin/phpunit
Note: see phpunit.xml.dist for available test suites.