Replace the URL
Use the public GitHub Pages address for the game. Do not use a local file path or the GitHub repository editing URL.
LMS deployment
Composer-generated games are self-contained HTML files. Publish the game at a public HTTPS URL, then point your LMS directly at that URL. You can embed the published game directly in a course page.
Step 1
GitHub Pages is a convenient static host. Another HTTPS static host works too. Follow the illustrated publishing guide for the full hosting steps.
Find the generated game HTML. Keep the recipe, manifest, and README for your records.
index.htmlThis is not required, but it gives you the cleanest public URL. If you keep the generated file name, the public URL simply needs to include that file name.
Upload index.html to the publishing root and commit the file.
In the repository, open Settings → Pages, choose Deploy from a branch, select the main branch and the root folder, then save.
Open the Pages URL in a private browser window. Confirm the title screen, enabled modes, questions, graphs, mobile layout, local saving where applicable, and results.
Step 2
Create or edit a course page in your LMS. If its editor supports HTML embeds, paste an iframe using your hosted URL. Otherwise, add the URL as an external course link.
<iframe
title="Mastery Quest game"
src="https://YOURUSERNAME.github.io/YOUR-REPO/"
width="100%"
height="900"
style="border:0;"
loading="lazy"
allowfullscreen>
</iframe>Use the public GitHub Pages address for the game. Do not use a local file path or the GitHub repository editing URL.
900 pixels is a practical starting point. Increase it if your LMS theme creates unnecessary internal scrolling.
Verify the page as a student. Test desktop and mobile. Make sure the game is not blocked by institutional iframe or content-security settings.
index.html is the game. The LMS <iframe> embeds that game. That is the whole chain.Before you assign it
Launch every mode you enabled. Timed Trial should run for the full ten-minute clock; Exam Drill lets students review and revise a nine-question section before committing it at a checkpoint; correctness stays hidden while that section is active.
Progress and run data stay in the learner's browser. Test save/resume only in modes that support it and confirm clearing browser data behaves as expected.
If students must submit a result screenshot, mastery report, verification code, CSV, or other course evidence, state that requirement explicitly in your LMS. Use Mastery Report guidance and the Telemetry Data Dictionary to interpret the evidence.