|
|
"""Alternative entry point for local development. |
|
|
|
|
|
NOTE: HuggingFace Spaces Docker deployment uses `python -m stroke_deepisles_demo.ui.app` |
|
|
(see Dockerfile CMD). This file is for local development convenience only. |
|
|
|
|
|
For HF Spaces deployment, see: src/stroke_deepisles_demo/ui/app.py |
|
|
""" |
|
|
|
|
|
from pathlib import Path |
|
|
|
|
|
import gradio as gr |
|
|
|
|
|
|
|
|
|
|
|
_ASSETS_DIR = Path(__file__).parent / "src" / "stroke_deepisles_demo" / "ui" / "assets" |
|
|
gr.set_static_paths(paths=[str(_ASSETS_DIR)]) |
|
|
|
|
|
from stroke_deepisles_demo.core.config import get_settings |
|
|
from stroke_deepisles_demo.core.logging import get_logger, setup_logging |
|
|
from stroke_deepisles_demo.ui.app import get_demo |
|
|
from stroke_deepisles_demo.ui.viewer import get_niivue_head_html |
|
|
|
|
|
logger = get_logger(__name__) |
|
|
|
|
|
|
|
|
settings = get_settings() |
|
|
setup_logging(settings.log_level, format_style=settings.log_format) |
|
|
|
|
|
|
|
|
demo = get_demo() |
|
|
|
|
|
if __name__ == "__main__": |
|
|
|
|
|
logger.info("=" * 60) |
|
|
logger.info("STARTUP: stroke-deepisles-demo (root app.py)") |
|
|
logger.info("Assets directory: %s", _ASSETS_DIR.resolve()) |
|
|
logger.info("Assets exists: %s", _ASSETS_DIR.exists()) |
|
|
logger.info("=" * 60) |
|
|
|
|
|
|
|
|
niivue_head = get_niivue_head_html() |
|
|
|
|
|
demo.launch( |
|
|
server_name=settings.gradio_server_name, |
|
|
server_port=settings.gradio_server_port, |
|
|
share=settings.gradio_share, |
|
|
theme=gr.themes.Soft(), |
|
|
css="footer {visibility: hidden}", |
|
|
allowed_paths=[str(_ASSETS_DIR)], |
|
|
head=niivue_head, |
|
|
) |
|
|
|