import os import sys sys.path.append(os.path.dirname(os.path.abspath(__file__))) import argparse import logging from dash import Dash from layout import layout from callbacks import register_callbacks logging.basicConfig(level=logging.INFO) # get the correct port from proxy parser = argparse.ArgumentParser() parser.add_argument("--port", type=int) args = parser.parse_args() port: int = args.port if not port: raise ValueError(f"Port of proxy server for Dash not found in {args}.") else: logging.debug(f"Dash app running on port {port}.") # define Dash app app = Dash( name=__name__, requests_pathname_prefix="/Dash/" ) # define layout app.layout = layout # register all callback functions register_callbacks(app=app) # Run Dash app in the notebook app.run( jupyter_mode="jupyterlab", port=port, host="localhost", debug=True )