Notebook Document Generation

The Wolfram Language's symbolic document paradigm makes it uniquely easy to create complex structured documents programmatically, including both graphical elements and dynamic interactivity.

CreateDocument create a complete formatted document from a list of expressions

CreateNotebook create a blank notebook of the specified type

DocumentNotebook symbolic representation of a document notebook

TextCell, ExpressionCell symbolic representations of cells in any style

NotebookEvaluate evaluate the contents of a notebook

SelectionEvaluate evaluate a selection

Document Structure

CellGroup symbolic representation of a cell group, with any cells closed

Grid arbitrary 2D layout of expressions, graphics, etc., with spanning, frames, etc.

TabView arbitrary tabbed pages

OpenerView  ▪  SlideView  ▪  FlipView  ▪  MenuView

Document Styling »

StyleDefinitions overall cascading stylesheet definitions for a document

Style specify a style name or styling options for any element of a document

Text text to be embedded anywhere in a document

Background  ▪  CellMargins  ▪  Framed  ▪  Highlighted  ▪  Panel  ▪  WindowSize  ▪  WindowTitle

Active Elements & Annotation

Hyperlink create a hyperlink to any URL or any part of the document

Tooltip  ▪  Mouseover  ▪  Checkbox  ▪  ListAnimate  ▪  Manipulate

Defer create a cell containing evaluatable input

Graphics »

Import import graphics etc. to include

Graphics  ▪  Inset  ▪  ListPlot  ▪  ListLinePlot  ▪  ...

Template-Based Document Generation »

GenerateDocument create a formatted document by applying a template notebook

TemplateApply  ▪  NotebookTemplate  ▪  ...

Text Generation »

StringTemplate  ▪  TextString  ▪  LLMSynthesize  ▪  ...

LLMResourceFunction generate text using prompts from the Wolfram Prompt Repository

Chat Notebooks

ChatEvaluate add a chat response to a notebook using an LLM


CloudDeploy deploy a document to the cloud

Export export to the web and other media, in HTML, PDF, XML, etc.

NotebookPrint print an expression or a notebook to a default printer

Save As  ▪  Send To  ▪  Print

Deploy make a document or any part of it uneditable

Incremental Document Generation

CellPrint insert a cell at the point where evaluation is being done

AttachCell attach a floating cell to a part of the notebook or window

Print  ▪  NotebookWrite  ▪  Paste

Document Import

NotebookImport import structured material from a notebook

NotebookGet  ▪  NotebookRead