Gradio web dashboard for xil-pipeline.
A browser-based GUI that supplements the CLI for visual oversight,
audio preview, and sharing episode review with collaborators.
Usage:
xil-gui # opens http://localhost:7860
xil-gui --port 8080 # custom port
xil-gui --share # generate public URL for partner access (72h tunnel)
Install the optional [gui] extra first:
pip install 'xil-pipeline[gui]'
RUNNABLE_STAGES
module-attribute
RUNNABLE_STAGES = ['1) scan', '2) parse', '3) produce', '4) assemble', '5) daw', '6) master']
DRY_RUN_STAGES
module-attribute
DRY_RUN_STAGES = {'produce', 'daw', 'master'}
get_parser
get_parser() -> argparse.ArgumentParser
Source code in src/xil_pipeline/xil_gui.py
| def get_parser() -> argparse.ArgumentParser:
parser = argparse.ArgumentParser(
prog="xil-gui",
description="Launch the xil-pipeline web dashboard (Gradio).",
formatter_class=argparse.RawDescriptionHelpFormatter,
epilog=(
"Requires the [gui] extra:\n"
" pip install 'xil-pipeline[gui]'\n\n"
"Partner sharing (temporary 72h public URL):\n"
" xil-gui --share\n"
),
)
parser.add_argument(
"--port", type=int, default=7860,
help="Port to listen on (default: 7860)",
)
parser.add_argument(
"--host", default="127.0.0.1",
help="Host address to bind (default: 127.0.0.1)",
)
parser.add_argument(
"--share", action="store_true",
help="Generate a public ngrok URL for partner access (open, no auth)",
)
return parser
|
main
Source code in src/xil_pipeline/xil_gui.py
| def main() -> None:
args = get_parser().parse_args()
demo = _build_app()
demo.launch(
server_name=args.host,
server_port=args.port,
share=args.share,
allowed_paths=[str(get_workspace_root())],
)
|