Python API reference¶
jupyter_lecture_studio and lecture_studio expose the same objects. Component methods display in Jupyter by default; pass show=False to receive HTML in scripts.
LectureDeck¶
- class lecture_studio.LectureDeck(course=None, *, series=None, lesson='', language='python', theme='gold', brand=None, locale=None, markup='markdown', **theme_options)¶
A course brand, a visual theme, a locale and the lecture’s components.
Component methods display immediately in Jupyter;
show=Falsereturns standalone HTML instead (use it in scripts). Re-running a notebook cell replaces what that cell added.export()saves every component.- Parameters:
- __init__(course=None, *, series=None, lesson='', language='python', theme='gold', brand=None, locale=None, markup='markdown', **theme_options)¶
- clear()¶
Remove every component and restart numbering.
- Return type:
None
- html(*, include_answers=True, notes=False)¶
Every component as one standalone HTML fragment (styles included).
- Parameters:
include_answers (bool)
notes (bool)
- Return type:
str
- styles(*, show=True)¶
Display fonts and styles once, e.g. in the first cell of a notebook.
Later outputs then omit the embedded fonts. Useful when the first lecture output is far down the notebook or was cleared.
- Parameters:
show (bool)
- Return type:
str | None
- add(component, *, id=None, show=True)¶
Add any registered component (including plugin components).
- Parameters:
component (Component)
id (str | None)
show (bool)
- Return type:
str | None
- cover(title, description='', *, kicker='', tags=(), sections=(), hero_code='', hero_result='', hero_label=None, footer_label=None, notes='', id=None, show=True)¶
Lecture cover with tags, section cards and an optional code emblem.
- Parameters:
title (str)
description (str | RichText)
kicker (str)
tags (Sequence[str])
sections (Sequence[CoverSection | Mapping])
hero_code (str)
hero_result (str)
hero_label (str | None)
footer_label (str | None)
notes (str)
id (str | None)
show (bool)
- slide(title, description='', *, cards=(), subtitle='', diagram=None, activity=None, notes='', id=None, show=True)¶
Numbered concept slide: explanation cards, a diagram and an activity.
- note(title, body='', *, notes='', id=None, show=True)¶
A light reading panel for summaries and remarks.
- Parameters:
title (str)
body (str | RichText)
notes (str)
id (str | None)
show (bool)
- table(title, headers, rows, *, notes='', id=None, show=True)¶
A comparison table. Cells are plain text.
- Parameters:
title (str)
headers (Sequence[Any])
rows (Iterable[Sequence[Any]])
notes (str)
id (str | None)
show (bool)
- callout(body, *, style='info', title=None, notes='', id=None, show=True)¶
A highlighted remark: info, tip, warning, mistake, success or key.
- Parameters:
body (str | RichText)
style (str)
title (str | None)
notes (str)
id (str | None)
show (bool)
- compare(title, before, after, *, mode='wrong-right', before_label=None, after_label=None, before_note='', after_note='', description='', language=None, notes='', id=None, show=True)¶
Two code versions side by side (
wrong-rightorbefore-after).
- code(code, *, title='', output='', language=None, highlight=(), line_numbers=False, description='', caption='', notes='', id=None, show=True)¶
Displayed code with its expected output, highlighted lines and numbers.
- Parameters:
code (str)
title (str)
output (str)
language (str | None)
highlight (Sequence[int])
line_numbers (bool)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- quiz(question, options, answer, *, explanation='', code='', language=None, title=None, notes='', id=None, show=True)¶
Multiple-choice check that marks the chosen option, without JavaScript.
- Parameters:
question (str)
options (Sequence[str])
answer (int | str)
explanation (str | RichText)
code (str)
language (str | None)
title (str | None)
notes (str)
id (str | None)
show (bool)
- trace(code, steps, *, title='', language=None, description='', notes='', id=None, show=True)¶
Step-by-step execution: the current line, variables and output.
- exercise(title, task, *, starter='', hints=(), solution='', explanation='', language=None, notes='', id=None, show=True)¶
A practice task with progressive hints and a hidden solution.
- agenda(items, *, title=None, mode='goals', notes='', id=None, show=True)¶
Learning goals (
mode='goals') or key takeaways (mode='recap').- Parameters:
items (Sequence[str])
title (str | None)
mode (str)
notes (str)
id (str | None)
show (bool)
- recap(items, *, title=None, notes='', id=None, show=True)¶
Key takeaways at the end of a lecture.
- Parameters:
items (Sequence[str])
title (str | None)
notes (str)
id (str | None)
show (bool)
- figure(src, *, caption='', alt='', title='', width=None, notes='', id=None, show=True)¶
An image; local files are embedded so the lecture stays self-contained.
- Parameters:
src (str)
caption (str)
alt (str)
title (str)
width (int | None)
notes (str)
id (str | None)
show (bool)
- divider(title, subtitle='', *, label=None, notes='', id=None, show=True)¶
A section break between parts of a lecture.
- Parameters:
title (str)
subtitle (str)
label (str | None)
notes (str)
id (str | None)
show (bool)
- math(latex, *, title='', legend=None, description='', caption='', notes='', id=None, show=True)¶
Display formulas written in LaTeX;
legendexplains the symbols.- Parameters:
latex (str | Sequence[str])
title (str)
legend (Mapping[str, str] | None)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- array(values, *, title='', name='', highlight=(), pointers=None, slice=None, negative=False, description='', caption='', notes='', id=None, show=True)¶
A list drawn as indexed cells, with pointers (
{'i': 0}) and a slice[start, stop].- Parameters:
values (Sequence[Any])
title (str)
name (str)
highlight (Sequence[int])
pointers (Mapping[str, int] | None)
slice (Sequence[int] | None)
negative (bool)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- matrix(rows, *, title='', name='', row_labels=(), col_labels=(), row_title='', col_title='', heatmap=False, highlight=(), brackets=False, metrics=None, description='', caption='', notes='', id=None, show=True)¶
A grid of values;
heatmap=Trueshades cells,brackets=Truedraws a math matrix.- Parameters:
rows (Sequence[Sequence[Any]])
title (str)
name (str)
row_labels (Sequence[str])
col_labels (Sequence[str])
row_title (str)
col_title (str)
heatmap (bool)
highlight (Sequence[Sequence[int]])
brackets (bool)
metrics (Mapping[str, Any] | None)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- confusion_matrix(counts, labels, *, title='', description='', caption='', notes='', id=None, show=True)¶
A classifier’s confusion matrix: actual classes by row, predictions by column, with accuracy.
- Parameters:
counts (Sequence[Sequence[int]])
labels (Sequence[str])
title (str)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- chart(series, *, mode='line', labels=(), title='', x_label='', y_label='', y_min=None, y_max=None, description='', caption='', notes='', id=None, show=True)¶
A line, bar or scatter chart.
seriesis a list of numbers,{'loss': [...], 'accuracy': [...]}or a list of{'name', 'values', 'x'}dictionaries.- Parameters:
series (Any)
mode (str)
labels (Sequence[str])
title (str)
x_label (str)
y_label (str)
y_min (float | None)
y_max (float | None)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- network(layers, *, labels=(), title='', description='', caption='', notes='', id=None, show=True)¶
A feed-forward neural network, e.g.
[4, 6, 3]neurons per layer.- Parameters:
layers (Sequence[int])
labels (Sequence[str])
title (str)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- tree(root, *, title='', description='', caption='', notes='', id=None, show=True)¶
A rooted tree:
{'value': '8', 'children': [{'value': '3'}, None]}.- Parameters:
root (Any)
title (str)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- graph(nodes, edges=(), *, directed=False, title='', description='', caption='', notes='', id=None, show=True)¶
Nodes and edges:
graph(['A', 'B'], [('A', 'B', 4)], directed=True).- Parameters:
nodes (Sequence[Any])
edges (Sequence[Any])
directed (bool)
title (str)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- memory(frames, objects=(), *, title='', stack_label=None, heap_label=None, description='', caption='', notes='', id=None, show=True)¶
Frames, variables and the objects they reference (
"@id"draws an arrow).memory({'main': {'x': 5, 'nums': '@a'}}, {'a': [1, 2]})- Parameters:
frames (Any)
objects (Any)
title (str)
stack_label (str | None)
heap_label (str | None)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- schema(tables, *, title='', per_row=3, description='', caption='', notes='', id=None, show=True)¶
Database tables and relationships:
{'students': ['id INT PK', 'name TEXT'], ...}.- Parameters:
tables (Any)
title (str)
per_row (int)
description (str | RichText)
caption (str)
notes (str)
id (str | None)
show (bool)
- render(content, *, show=True)¶
Render a component dictionary (
{"type": "slide", ...}) or a list.- Parameters:
content (Mapping[str, Any] | Sequence[Mapping[str, Any]])
show (bool)
- classmethod from_dict(data, *, show=True, base_dir=None)¶
Build a deck from the portable course format (see
to_dict).- Parameters:
data (Mapping[str, Any])
show (bool)
base_dir (str | Path | None)
- Return type:
- classmethod from_file(path, *, show=True)¶
Load one portable JSON course file and render its components.
- Parameters:
path (str | Path)
show (bool)
- Return type:
- to_dict()¶
The deck in the portable JSON course format.
- Return type:
dict[str, Any]
- save(path)¶
Write the deck as a JSON course file that
from_filereads back.- Parameters:
path (str | Path)
- Return type:
Path
- export(path, *, title=None, include_answers=True, present=False, notes=None, fragments=False)¶
Save a standalone HTML file with embedded styles and fonts.
include_answers=Falseremoves activity answers, quiz keys and exercise solutions from the file (a student copy).present=Trueadds a slideshow mode: arrow keys, fullscreen (F) and speaker notes (S);fragments=Truethen reveals cards one at a time. Speaker notes are only included in presentation exports unlessnotessays otherwise.- Parameters:
path (str | Path)
title (str | None)
include_answers (bool)
present (bool)
notes (bool | None)
fragments (bool)
- Return type:
Path
- export_pdf(path, *, width=None, scale=2, mode='faithful', include_answers=True, title=None, timeout=60, audit_dir=None, browser_path=None)¶
Save the deck as a PDF using the optional pdf extra.
Faithful mode preserves screen pixels as lossless images. Vector mode keeps selectable text. Animations become a deterministic static frame. Collapsible sections are open;
include_answers=Falsehides answers.- Parameters:
path (str | Path)
width (int | None)
scale (int)
mode (str)
include_answers (bool)
title (str | None)
timeout (int)
audit_dir (str | Path | None)
browser_path (str | Path | None)
- Return type:
Path
Settings¶
- class lecture_studio.Theme(preset='gold', accent=None, background=None, motion=True, direction=None, max_width=1280, notebook_style=False, external_fonts=False, tokens=None)¶
Visual settings.
direction=Nonefollows the deck’s locale.- Parameters:
preset (str)
accent (str | None)
background (str | None)
motion (bool)
direction (str | None)
max_width (int)
notebook_style (bool)
external_fonts (bool)
tokens (Mapping[str, str] | None)
- class lecture_studio.Brand(course=None, series=None, lesson='', footer=None, language='python')¶
Course identity shown on every slide.
Noneuses the locale default.- Parameters:
course (str | None)
series (str | None)
lesson (str)
footer (str | None)
language (str)
- class lecture_studio.RichText(html)¶
Explicitly trusted author HTML. Never use for untrusted student input.
- Parameters:
html (str)
Content models¶
- class lecture_studio.Card(title: 'str', explanation: 'Content' = '', code: 'str' = '', reason: 'Content' = '', language: 'str | None' = None)¶
- class lecture_studio.CoverSection(title: 'str', description: 'str' = '')¶
- Parameters:
title (str)
description (str)
- class lecture_studio.Node(value: 'str', note: 'str' = '', selected: 'bool' = False)¶
- Parameters:
value (str)
note (str)
selected (bool)
- class lecture_studio.Diagram(title: 'str', nodes: 'Sequence[Node]' = <factory>, caption: 'str' = '', direction: 'str' = 'ltr', arrows: 'bool' = True, kind: 'str' = 'flow')¶
- Parameters:
title (str)
nodes (Sequence[Node])
caption (str)
direction (str)
arrows (bool)
kind (str)
- class lecture_studio.Activity(question: 'str', answer: 'Content', code: 'str' = '', language: 'str | None' = None, label: 'str | None' = None, reveal: 'str | None' = None)¶
- Parameters:
question (str)
answer (str | RichText)
code (str)
language (str | None)
label (str | None)
reveal (str | None)
- class lecture_studio.TraceStep(line: 'int', variables: 'Mapping[str, Any]'=<factory>, output: 'str' = '', note: 'str' = '')¶
- Parameters:
line (int)
variables (Mapping[str, Any])
output (str)
note (str)
Components¶
- class lecture_studio.Component¶
Base class for deck components; register new ones in
components.- to_dict()¶
A JSON-ready dictionary that
LectureDeck.renderaccepts again.- Return type:
dict[str, Any]
- class lecture_studio.Cover(title: 'str', description: 'Content' = '', kicker: 'str' = '', tags: 'Sequence[str]' = (), sections: 'Sequence[CoverSection]' = (), hero_code: 'str' = '', hero_result: 'str' = '', hero_label: 'str | None' = None, footer_label: 'str | None' = None, notes: 'str' = '')¶
- Parameters:
title (str)
description (str | RichText)
kicker (str)
tags (Sequence[str])
sections (Sequence[CoverSection])
hero_code (str)
hero_result (str)
hero_label (str | None)
footer_label (str | None)
notes (str)
- class lecture_studio.Slide(title: 'str', description: 'Content' = '', cards: 'Sequence[Card]' = (), subtitle: 'str' = '', diagram: 'Diagram | None' = None, activity: 'Activity | None' = None, notes: 'str' = '')¶
- class lecture_studio.Note(title: 'str', body: 'Content' = '', notes: 'str' = '')¶
- Parameters:
title (str)
body (str | RichText)
notes (str)
- class lecture_studio.Table(title: 'str', headers: 'Sequence[Any]', rows: 'Sequence[Sequence[Any]]', notes: 'str' = '')¶
- Parameters:
title (str)
headers (Sequence[Any])
rows (Sequence[Sequence[Any]])
notes (str)
- class lecture_studio.Callout(body, title=None, style='info', notes='')¶
A highlighted remark: tip, warning, common mistake, key idea…
- Parameters:
body (str | RichText)
title (str | None)
style (str)
notes (str)
- class lecture_studio.Compare(title, before, after, mode='wrong-right', before_label=None, after_label=None, before_note='', after_note='', description='', language=None, notes='')¶
Two code versions side by side: wrong/right or before/after.
- class lecture_studio.CodeExample(code, title='', output='', language=None, highlight=(), line_numbers=False, description='', caption='', notes='')¶
Code with an optional result panel, highlighted lines and line numbers.
- Parameters:
code (str)
title (str)
output (str)
language (str | None)
highlight (Sequence[int])
line_numbers (bool)
description (str | RichText)
caption (str)
notes (str)
- class lecture_studio.Quiz(question, options, answer, explanation='', code='', language=None, title=None, notes='')¶
Multiple choice.
answeris the option index (from 0) or its text.Works without JavaScript: choosing an option marks it right or wrong.
- Parameters:
question (str)
options (Sequence[str])
answer (int | str)
explanation (str | RichText)
code (str)
language (str | None)
title (str | None)
notes (str)
- class lecture_studio.Trace(code, steps, title='', language=None, description='', notes='')¶
Step through code line by line, showing variables and output.
- class lecture_studio.Exercise(title: 'str', task: 'Content', starter: 'str' = '', hints: 'Sequence[str]' = (), solution: 'str' = '', explanation: 'Content' = '', language: 'str | None' = None, notes: 'str' = '')¶
- class lecture_studio.Agenda(items, title=None, mode='goals', notes='')¶
Learning goals at the start of a lecture, or a recap at the end.
- Parameters:
items (Sequence[str])
title (str | None)
mode (str)
notes (str)
- class lecture_studio.Figure(src, caption='', alt='', title='', width=None, notes='')¶
An image from a local file (embedded at render time) or an https URL.
- Parameters:
src (str)
caption (str)
alt (str)
title (str)
width (int | None)
notes (str)
- class lecture_studio.Divider(title, subtitle='', label=None, notes='')¶
A section break between parts of a long lecture.
- Parameters:
title (str)
subtitle (str)
label (str | None)
notes (str)
Subject visuals¶
- class lecture_studio.Equation(latex, title='', legend=<factory>, description='', caption='', notes='')¶
Display formulas in LaTeX, with an optional legend of their symbols.
legendmaps a symbol (LaTeX) to its meaning, e.g.{r'\eta': 'learning rate'}.- Parameters:
latex (str | Sequence[str])
title (str)
legend (Mapping[str, str])
description (str | RichText)
caption (str)
notes (str)
- class lecture_studio.Array(values, title='', name='', highlight=(), pointers=<factory>, slice=None, negative=False, description='', caption='', notes='')¶
A list or array drawn as cells with indices, pointers and a slice.
pointersmaps a label to an index (len(values)marks the end);sliceis[start, stop]like Python’svalues[start:stop].- Parameters:
values (Sequence[Any])
title (str)
name (str)
highlight (Sequence[int])
pointers (Mapping[str, int])
slice (Sequence[int] | None)
negative (bool)
description (str | RichText)
caption (str)
notes (str)
- class lecture_studio.Matrix(rows, title='', name='', row_labels=(), col_labels=(), row_title='', col_title='', heatmap=False, highlight=(), brackets=False, metrics=<factory>, description='', caption='', notes='')¶
A grid of values: matrices, tables of weights, heatmaps, confusion matrices.
heatmap=Trueshades numeric cells by value;highlightlists[row, column]cells;metricsadds labelled figures below the grid.- Parameters:
rows (Sequence[Sequence[Any]])
title (str)
name (str)
row_labels (Sequence[str])
col_labels (Sequence[str])
row_title (str)
col_title (str)
heatmap (bool)
highlight (Sequence[Sequence[int]])
brackets (bool)
metrics (Mapping[str, str])
description (str | RichText)
caption (str)
notes (str)
- class lecture_studio.Chart(series, mode='line', labels=(), title='', x_label='', y_label='', y_min=None, y_max=None, description='', caption='', notes='')¶
A line, bar or scatter chart drawn as inline SVG (training curves, results…).
- class lecture_studio.Series(name: 'str', values: 'Sequence[float]', x: 'Sequence[float]' = ())¶
- Parameters:
name (str)
values (Sequence[float])
x (Sequence[float])
- class lecture_studio.Network(layers, labels=(), title='', description='', caption='', notes='')¶
A feed-forward neural network: neurons per layer, fully connected.
- Parameters:
layers (Sequence[int])
labels (Sequence[str])
title (str)
description (str | RichText)
caption (str)
notes (str)
- class lecture_studio.Tree(root, title='', description='', caption='', notes='')¶
A rooted tree (search trees, parse trees, decision trees…).
Nonechildren keep an empty slot, so binary trees keep left and right.
- class lecture_studio.TreeNode(value: 'str', children: 'Sequence[TreeNode | None]' = (), selected: 'bool' = False, note: 'str' = '')¶
- Parameters:
value (str)
children (Sequence[TreeNode | None])
selected (bool)
note (str)
- class lecture_studio.Graph(nodes, edges=(), directed=False, title='', description='', caption='', notes='')¶
Nodes and edges (search, shortest paths, networks, state machines).
Nodes are ids or
{"id", "label", "x", "y"}on a 0-100 grid; without positions they are placed on a circle. Edges are[source, target]or[source, target, label].
- class lecture_studio.GraphNode(id: 'str', label: 'str' = '', x: 'float | None' = None, y: 'float | None' = None, selected: 'bool' = False)¶
- Parameters:
id (str)
label (str)
x (float | None)
y (float | None)
selected (bool)
- class lecture_studio.GraphEdge(source: 'str', target: 'str', label: 'str' = '', selected: 'bool' = False)¶
- Parameters:
source (str)
target (str)
label (str)
selected (bool)
- class lecture_studio.Memory(frames, objects=(), title='', stack_label=None, heap_label=None, description='', caption='', notes='')¶
A memory diagram: stack frames with variables and the objects they reference.
Values written
"@id"draw an arrow to the object with that id, so the same component shows Python names and objects, C/C++ pointers, linked lists and recursion (the last frame is the active one).- Parameters:
frames (Sequence[Frame])
objects (Sequence[HeapObject])
title (str)
stack_label (str | None)
heap_label (str | None)
description (str | RichText)
caption (str)
notes (str)
- class lecture_studio.Frame(name, variables=<factory>)¶
A stack frame (or a scope) and its variables.
"@id"points to an object.- Parameters:
name (str)
variables (Mapping[str, Any])
- class lecture_studio.HeapObject(id, value='', type='')¶
An object in memory.
valueis text, a list (indexed slots) or a dict (fields).- Parameters:
id (str)
value (Any)
type (str)
- class lecture_studio.Schema(tables, title='', per_row=3, description='', caption='', notes='')¶
Database tables with keys and the relationships between them.
- Parameters:
tables (Sequence[SchemaTable])
title (str)
per_row (int)
description (str | RichText)
caption (str)
notes (str)
- class lecture_studio.SchemaTable(name: 'str', columns: 'Sequence[Column]')¶
- Parameters:
name (str)
columns (Sequence[Column])
- class lecture_studio.Column(name, type='', key='', references='')¶
A table column. Shorthand:
"student_id INT FK -> students.id".- Parameters:
name (str)
type (str)
key (str)
references (str)
- lecture_studio.to_mathml(latex, *, display=True)¶
Convert a LaTeX formula (without
$delimiters) to a MathML element.- Parameters:
latex (str)
display (bool)
- Return type:
str
Extension points¶
- lecture_studio.register_component(model, render, *, replace=False)¶
Register a component model (a
Componentdataclass) and its renderer.- Parameters:
model (type[Component])
render (Callable[[Any, RenderContext], str])
replace (bool)
- Return type:
ComponentSpec
- lecture_studio.get_component(name)¶
- Parameters:
name (str)
- Return type:
ComponentSpec
- lecture_studio.component_names()¶
- Return type:
tuple[str, …]
- class lecture_studio.RenderContext(brand, theme, locale, direction, markup='markdown', ordinal=1, uid='ls', include_answers=True, include_notes=False, base_dir=<factory>)¶
Everything a renderer needs besides the component itself.
ordinalcounts components of the same kind (slide 1, 2, 3…).uidis stable for the same content and position, for form controls.- Parameters:
- line(value)¶
One line of author text: escaped, with inline code and bold.
- Parameters:
value (str)
- Return type:
str
- text(value)¶
Multi-line author content (plain text or trusted RichText).
- Return type:
str
- lecture_studio.register_theme(name, *, accent, background, palette='custom', tokens=None)¶
Register a reusable theme, e.g. a university or department identity.
- Parameters:
name (str)
accent (str)
background (str)
palette (str)
tokens (Mapping[str, str] | None)
- Return type:
ThemePreset
- lecture_studio.get_theme(name)¶
- Parameters:
name (str)
- Return type:
ThemePreset
- lecture_studio.theme_names()¶
- Return type:
tuple[str, …]
- lecture_studio.register_locale(code, labels, *, direction='ltr', base='en')¶
Add or replace a locale. Missing labels fall back to
base.>>> register_locale('fr', {'reveal': 'Voir la réponse'}) Locale(code='fr', ...)
- Parameters:
code (str)
labels (Mapping[str, str])
direction (str)
base (str)
- Return type:
- lecture_studio.available_locales()¶
- Return type:
tuple[str, …]
- class lecture_studio.Locale(code, direction, labels=<factory>)¶
A language code, its writing direction and the interface labels.
- Parameters:
code (str)
direction (str)
labels (Mapping[str, str])
- lecture_studio.register_highlighter(names, highlighter, *, label=None, replace=False)¶
Use
highlighter(code) -> htmlfor these language names.The function must escape the code it returns (only
<span class>markup is expected).labelis shown in the code toolbar.- Parameters:
names (Iterable[str])
highlighter (Callable[[str], str])
label (str | None)
replace (bool)
- Return type:
None
- lecture_studio.highlighter_names()¶
- Return type:
tuple[str, …]
Helpers¶
- lecture_studio.diagram_names()¶
- Return type:
tuple[str, …]
- lecture_studio.export_pdf(source, destination, *, width=1328, scale=2, mode='faithful', include_answers=True, title=None, timeout=60, audit_dir=None, browser_path=None)¶
Export saved HTML/JSON/notebook content without executing notebook code.
faithfulembeds lossless high-resolution screen images; text is not selectable.vectorpreserves selectable text and embedded fonts, with possible differences in effects rendered by Chromium’s PDF engine; lecture shadows are omitted because PDF viewers flatten them unevenly. Each slide gets its own fitted page. Notebook practice cells are grouped. Collapsible sections and answers are expanded by default. Setinclude_answers=Falseto hide activity answers only. Fonts are local; external network access is disabled. Browser installation is explicit.audit_diroptionally saves PNG references and dimensions.
- jupyter_lecture_studio.documentation_path()¶
Return the bundled offline documentation index as an absolute Path.
A source checkout needs
python tools/build_docs.pyfirst. Published wheels and source archives already contain the generated documentation.