39 lines
1014 B
Python
39 lines
1014 B
Python
import dash
|
|
import dash_bootstrap_components as dbc
|
|
from .config.settings import AppSettings
|
|
from .ui.layout import AppLayout
|
|
from .ui.callbacks.data_processing import DataProcessingCallbacks
|
|
from .ui.callbacks.visualization import VisualizationCallbacks
|
|
from .ui.callbacks.interactions import InteractionCallbacks
|
|
|
|
|
|
def create_app():
|
|
app = dash.Dash(
|
|
__name__,
|
|
external_stylesheets=[dbc.themes.BOOTSTRAP]
|
|
)
|
|
|
|
layout_manager = AppLayout()
|
|
app.layout = layout_manager.create_layout()
|
|
|
|
DataProcessingCallbacks()
|
|
VisualizationCallbacks()
|
|
InteractionCallbacks()
|
|
|
|
return app
|
|
|
|
|
|
def run_app(app=None, debug=None, host=None, port=None):
|
|
if app is None:
|
|
app = create_app()
|
|
|
|
app.run(
|
|
debug=debug if debug is not None else AppSettings.DEBUG,
|
|
host=host if host is not None else AppSettings.HOST,
|
|
port=port if port is not None else AppSettings.PORT
|
|
)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
app = create_app()
|
|
run_app(app) |