Internals

Cell management

PlutoBoard.add_cellMethod
add_cell(
	;
	ws::WebSocket
) -> nothing

Adds a cell at the bottom of the notebook

PlutoBoard.get_cellsMethod
get_cells(
	;
	ws::WebSocket
) -> Array{String}

Returns an array of all cells uuids

PlutoBoard.find_cells_with_variableMethod
find_cells_with_variable(
    var::String
) -> Set{String}

Finds all cells in the notebook that contain the given variable and returns their IDs.

JS, HTML and CSS injections

PlutoBoard.load_jsMethod
load_js() -> HypertextLiteral.Result

Returns a HypertextLiteral.Result object to load entry js files as modules and css stylesheets.

PlutoBoard.get_css_filesMethod
get_css_files() -> Array{String}

Returns all css files in static/css folder of developer package.

Fileserver

PlutoBoard.serve_fileMethod
serve_file(req::HTTP.Request)

Serves the requested file from the SERVE_DIR directory.

PlutoBoard.monitor_folderMethod
monitor_folder(; ws)

Watches the folder specified by `SERVE_DIR` for changes. When a file change is detected, sends a notification to the provided WebSocket `ws`.

Other stuff

PlutoBoard.setupMethod
setup()::nothing

Sets up PlutoBoard project by creating a new Julia package and copying necessary files.

PlutoBoard.open_fileMethod
open_file(
	path::String
)::String

Opens a file and returns its content as a string.

PlutoBoard.copy_with_deleteMethod
copy_with_delete(
	from::String,
	to::String
)::nothing

Copies a file from one location to another and deletes the original file. Sets the permissions of the copied file to 666.

PlutoBoard.parse_to_symbolMethod
parse_to_symbol(
	d::Dict{String, Any}
)::Dict{Symbol, Any}

Parse a dictionary with string keys to a dictionary with symbol keys.