Skip to content

LiaScriptLesson

Generated from front/ui/catalogue/examples/LiaScriptLesson.json

learning · static (no JavaScript) · no children. All components: component playground.

A LiaScript course (Markdown with quizzes, code and slides) played in a sandboxed frame on the tenant content origin; it completes itself at the last section.

Rendered from the example props below with the real component. Theme: coffee · oncall · nightsky · gravity · poland · ulam · platform · open on its own

{
"component": "LiaScriptLesson",
"props": {
"src": "https://content.localhost/lia/launch/abc123",
"title": "Interactive extraction lab",
"sections": 6,
"height": 720
}
}
Prop Type Required Notes
src string (href) yes Player URL on the content origin (from POST /api/liascript/launches/{topic}). max length 2048
title string yes Title. max length 160
sections integer Number of sections. ≥ 1
height integer Frame height px. ≥ 0, default 720
id string Anchor id for in-page links (letters, digits, dashes). max length 40

What a text-only client, an unknown renderer or a plain-text channel shows for the example above.

Interactive extraction lab

A node whose props fail the schema never breaks the page: the renderer shows the plain-text fallback instead (and logs the issues in development).

{
"src": "javascript:alert(1)",
"title": "Unsafe"
}

Issues:

  • /src unsafe or empty link

Rendered as:

Unsafe

axe-core: 12 rules passed, 0 violations, 1 need manual review. Run at build time on the server-rendered HTML in jsdom. Colour contrast and layout rules need a browser and are covered by the Playwright axe scans of the reference frontend.