Skip to content

Add quantui run app and quantui setup CLI launchers - #104

Merged
jonathanschultzNU merged 4 commits into
mainfrom
cursor/quantui-run-setup-c6d9
Aug 30, 2026
Merged

Add quantui run app and quantui setup CLI launchers#104
jonathanschultzNU merged 4 commits into
mainfrom
cursor/quantui-run-setup-c6d9

Conversation

@jonathanschultzNU

@jonathanschultzNU jonathanschultzNU commented Aug 30, 2026

Copy link
Copy Markdown
Collaborator

Adds quantui run app and quantui setup CLI launchers for pip-installed QuantUI, plus NCShare-aware behavior for HPC JupyterLab sessions.

CLI launchers

  • quantui run app — starts Voilà on port 8867 using a lazily generated ~/.quantui/app.ipynb
  • quantui setup — writes the launcher notebook and a quantui-app shell shortcut in ~/.local/bin

Requires the [app] extra (pip install 'quantui[app]').

NCShare / HPC JupyterLab

When Apptainer + Jupyter server env vars are detected (NCShare interactive sessions):

  • quantui setup also writes ~/QuantUI.ipynb (visible in JupyterLab's file browser) and prints cluster-specific launch instructions
  • quantui run app exits with code 1 and explains why standalone Voilà on a second port won't work — use Render with Voilà on ~/QuantUI.ipynb or the one-liner instead

Testing

  • tests/test_cli.py — launcher happy paths, HPC detection, home notebook write, run-app fail-fast
  • All CI checks pass (lint + mypy + tests on Python 3.9–3.11, Windows)

Docs

  • docs/CLI.md — NCShare / HPC section under quantui setup
  • Tracking repo: NCSHARE-DEPLOYMENT.md updated on branch cursor/ncshare-cli-setup-c6d9
Open in Web Open in Cursor 

NCCU-Schultz-Lab and others added 4 commits August 30, 2026 17:05
Lazy-provision ~/.quantui/app.ipynb for pip installs (no bundled
notebooks tree) and start Voilà with the same flags as native launchers.
Optional setup writes a quantui-app shell shortcut under ~/.local/bin.

Co-authored-by: Jonathan Schultz <jonathanschultzNU@users.noreply.github.com>
When Apptainer and Jupyter server env vars are present, quantui setup
also writes ~/QuantUI.ipynb for JupyterLab visibility and prints
cluster-specific launch instructions. quantui run app exits early with
guidance instead of starting an unreachable standalone Voila server.

Co-authored-by: Jonathan Schultz <jonathanschultzNU@users.noreply.github.com>
Reformat app_launcher.py and test_cli.py to satisfy pre-commit black.

Co-authored-by: Jonathan Schultz <jonathanschultzNU@users.noreply.github.com>
Compare str(bindir) against PATH entries instead of Path vs str.

Co-authored-by: Jonathan Schultz <jonathanschultzNU@users.noreply.github.com>
@jonathanschultzNU
jonathanschultzNU marked this pull request as ready for review August 30, 2026 19:03
@jonathanschultzNU
jonathanschultzNU merged commit c5f4337 into main Aug 30, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants