To generate the serialized JSON representation for a Bokeh application from a single Python script, pass the script name to bokeh json on the command line:

bokeh json app_script.py

The generated JSON will be saved in the current working directory with the name app_script.json.

Applications can also be created from directories. The directory should contain a main.py (and any other helper modules that are required) as well as any additional assets (e.g., theme files). Pass the directory name to bokeh json to generate the JSON:

bokeh json app_dir

By default, the generated JSON is output as one line, with no indentation. To generate “pretty printed” JSON on multiple lines, you can specify an indentation level with the --indent argument:

bokeh json app_script.py --indent=2
class JSON(parser: argparse.ArgumentParser)[source]

Subcommand to output applications as serialized JSON

file_contents(args: argparse.Namespace, doc: bokeh.document.document.Document) str[source]
extension: str = 'json'

file extension for output generated by this FileOutputSubcommand

name: ClassVar[str] = 'json'

name for this subcommand