This repo contains the code needed to create a simple LTI 1.3 test tool using the LTIaaS api.
-
Create a free account with LTIAAS by following this guide: https://ltiaas.com/docs/account_setup/.
When you create the account, feel free to enable all LTI 1.3 services to get the full usage of this test tool.
-
Create a Firebase project and make sure to upgrade it to a Blaze plan so that cloud functions can be used. Follow this guide if you need help.
Make sure you have NodeJS 16+ and the latest firebase CLI tools installed.
-
Edit
.firebasercand enter your Firebase project ID in place of[YOUR_PROJECT_ID] -
During step 1, an LTIAAS URL and API Key will have been generated. Add the Ltiaas URL and API key to the Firebase project's environment.
# replace API_KEY with the key given to you by LTIaaS
firebase functions:config:set env.apikey="API_KEY"
# replace YOUR with the subdomain given to you by LTIaaS
firebase functions:config:set env.ltiaasurl="https://YOUR.ltiaas.com"- Install and deploy the project to Firebase
cd functions/
npm install
npm run deployThis will generate two new Firebase functions and the Firebase output log will tell you the URLs assigned to the new functions. For example:
i functions: updating Node.js 16 function lti(us-central1)...
i functions: updating Node.js 16 function api(us-central1)...
✔ functions[api(us-central1)] Successful update operation.
✔ functions[lti(us-central1)] Successful update operation.
Function URL (lti(us-central1)): https://[FIREBASE_PROJECT].cloudfunctions.net/lti
Function URL (api(us-central1)): https://[FIREBASE_PROJECT].cloudfunctions.net/api
i functions: cleaning up build files...
✔ Deploy complete!
-
Take the two URLs from the firebase log and enter them into the API Settings page of your LTIaaS project.
- Launch URL:
https://[FIREBASE_PROJECT].cloudfunctions.net/lti/launch - Deep Linking URL:
https://[FIREBASE_PROJECT].cloudfunctions.net/lti/deeplink
- Launch URL:
An LTI 1.3 Tool is not very useful if there's no LMS to connect it with. LTIaaS has documentation on how to register an LTIaaS tool with all of the popular LMSes.
If you don't have an LMS available, there are several test LMS options that might work for you.
Once you register your test tool with an LMS, use the LMS to launch the tool. LTIaaS servers will handle the LTI OAuth process and redirect to the test tool landing page that looks like this:
Clicking the buttons will allow you to send LTI requests to the LMS using the LTIaaS API.

