Documentation
Code and markup
The slide as editable markup, and how it reconciles with what is on the canvas.
The Code panel shows the open slide as markup and as a stylesheet. Both are editable, and an edit to either is an ordinary change through the same reducer a drag uses.
The markup
<Text className="headline" textSizing="auto-height"> Build slides like software</Text><Image className="picture" assetId="…" imageFit="cover" />A node is identified by its className, which is unique within a slide. Retyping the markup reconciles against the existing tree by class name, so an element keeps its identity, its stylesheet rule and its place in history rather than being replaced.
A closed vocabulary
The tags are the component kinds Framulus can draw and nothing else. There are no imported React components, no raw HTML and no embedded widgets. A document is data, and a document that carried code would run that code when somebody else opened it.