Newer
Older
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
)