From 2fe066eac45f321db35b50c77ab2c50683563fba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=20David=20M=C3=BCller?= <57191390+t0mdavid-m@users.noreply.github.com> Date: Wed, 29 Apr 2026 06:46:34 +0200 Subject: [PATCH 1/5] Make Windows download button more catchy on quickstart page MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Wrap the Windows download in a styled card with a section header, description, full-width centered button, and install instructions — mirroring the offline-download box used in FLASHApp. --- content/quickstart.py | 81 +++++++++++++++++++++++++++++++++++++++---- 1 file changed, 74 insertions(+), 7 deletions(-) diff --git a/content/quickstart.py b/content/quickstart.py index 0b52c17..9cc1c48 100644 --- a/content/quickstart.py +++ b/content/quickstart.py @@ -20,19 +20,86 @@ def load_windows_app_bytes() -> bytes | None: return None +def render_windows_download_box(app_bytes: bytes) -> None: + """Render a styled offline-download card for the Windows app.""" + container_key = "windows_download_container" + + st.markdown( + """ +

+ Want to use quantms offline? +

+ """, + unsafe_allow_html=True, + ) + + spacer1, center_col, spacer2 = st.columns([2, 4, 2]) + with center_col: + with st.container(key=container_key): + st.markdown( + """ +

+ quantms for Windows +

+

+ quantms is best enjoyed online but you can download an offline version for Windows systems below. +

+ """, + unsafe_allow_html=True, + ) + + cols = st.columns([1, 2, 1]) + with cols[1]: + st.download_button( + label="📥 Download for Windows", + data=app_bytes, + file_name="OpenMS-App.zip", + mime="application/zip", + type="secondary", + use_container_width=True, + help="Download quantms for Windows systems", + ) + + st.markdown( + """ +
+ Extract the zip file and run the installer (.msi) to install the app. + Launch using the desktop icon after installation.
+ Even offline, it's still a web app - just packaged so you can use it without an internet connection. +
+ """, + unsafe_allow_html=True, + ) + + st.markdown( + f""" + + """, + unsafe_allow_html=True, + ) + + page_setup(page="main") st.markdown("# DDA Label-Free Quantification") windows_app_bytes = load_windows_app_bytes() if windows_app_bytes is not None: - st.download_button( - label="Download for Windows", - data=windows_app_bytes, - file_name="OpenMS-App.zip", - mime="application/zip", - icon=":material/download:", - ) + render_windows_download_box(windows_app_bytes) st.markdown( """ From f77ee740bc1605bae6126d63663b1f512a1b23ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=20David=20M=C3=BCller?= <57191390+t0mdavid-m@users.noreply.github.com> Date: Wed, 29 Apr 2026 06:47:48 +0200 Subject: [PATCH 2/5] Update offline download header copy Use "Want to run free and open DDA analysis offline?" as the section heading on the quickstart page. --- content/quickstart.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/quickstart.py b/content/quickstart.py index 9cc1c48..bdadda0 100644 --- a/content/quickstart.py +++ b/content/quickstart.py @@ -27,7 +27,7 @@ def render_windows_download_box(app_bytes: bytes) -> None: st.markdown( """

- Want to use quantms offline? + Want to run free and open DDA analysis offline?

""", unsafe_allow_html=True, From 56e48b81ef62fe2721f6639303433462eb78eec9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=20David=20M=C3=BCller?= <57191390+t0mdavid-m@users.noreply.github.com> Date: Wed, 29 Apr 2026 07:31:34 +0200 Subject: [PATCH 3/5] Rename app brand from quantms to OpenDDA in download box Update the user-facing strings in the offline-download card to use the new OpenDDA name. Leaves the reference to the upstream quantms Nextflow workflow untouched, since that refers to a different project. --- content/quickstart.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/quickstart.py b/content/quickstart.py index bdadda0..10fc330 100644 --- a/content/quickstart.py +++ b/content/quickstart.py @@ -39,10 +39,10 @@ def render_windows_download_box(app_bytes: bytes) -> None: st.markdown( """

- quantms for Windows + OpenDDA for Windows

- quantms is best enjoyed online but you can download an offline version for Windows systems below. + OpenDDA is best enjoyed online but you can download an offline version for Windows systems below.

""", unsafe_allow_html=True, @@ -57,7 +57,7 @@ def render_windows_download_box(app_bytes: bytes) -> None: mime="application/zip", type="secondary", use_container_width=True, - help="Download quantms for Windows systems", + help="Download OpenDDA for Windows systems", ) st.markdown( From 996f1df4ffec5eba26c81381ea017ce0f2b115e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=20David=20M=C3=BCller?= <57191390+t0mdavid-m@users.noreply.github.com> Date: Wed, 29 Apr 2026 07:53:05 +0200 Subject: [PATCH 4/5] Left-align offline download card to match page width Drop the spacer columns and centered text so the card spans the same width as the surrounding content and aligns with the page's left edge. --- content/quickstart.py | 102 ++++++++++++++++++++---------------------- 1 file changed, 48 insertions(+), 54 deletions(-) diff --git a/content/quickstart.py b/content/quickstart.py index 10fc330..58f0ae5 100644 --- a/content/quickstart.py +++ b/content/quickstart.py @@ -26,72 +26,66 @@ def render_windows_download_box(app_bytes: bytes) -> None: st.markdown( """ -

+

Want to run free and open DDA analysis offline?

""", unsafe_allow_html=True, ) - spacer1, center_col, spacer2 = st.columns([2, 4, 2]) - with center_col: - with st.container(key=container_key): - st.markdown( - """ -

- OpenDDA for Windows -

-

- OpenDDA is best enjoyed online but you can download an offline version for Windows systems below. -

- """, - unsafe_allow_html=True, - ) - - cols = st.columns([1, 2, 1]) - with cols[1]: - st.download_button( - label="📥 Download for Windows", - data=app_bytes, - file_name="OpenMS-App.zip", - mime="application/zip", - type="secondary", - use_container_width=True, - help="Download OpenDDA for Windows systems", - ) - - st.markdown( - """ -
- Extract the zip file and run the installer (.msi) to install the app. - Launch using the desktop icon after installation.
- Even offline, it's still a web app - just packaged so you can use it without an internet connection. -
- """, - unsafe_allow_html=True, - ) + with st.container(key=container_key): + st.markdown( + """ +

+ OpenDDA for Windows +

+

+ OpenDDA is best enjoyed online but you can download an offline version for Windows systems below. +

+ """, + unsafe_allow_html=True, + ) + + st.download_button( + label="📥 Download for Windows", + data=app_bytes, + file_name="OpenMS-App.zip", + mime="application/zip", + type="secondary", + help="Download OpenDDA for Windows systems", + ) st.markdown( - f""" - + """ +
+ Extract the zip file and run the installer (.msi) to install the app. + Launch using the desktop icon after installation.
+ Even offline, it's still a web app - just packaged so you can use it without an internet connection. +
""", unsafe_allow_html=True, ) + st.markdown( + f""" + + """, + unsafe_allow_html=True, + ) + page_setup(page="main") From 85cd35a1fd5fdbc141c659818ea854953b7355b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=20David=20M=C3=BCller?= <57191390+t0mdavid-m@users.noreply.github.com> Date: Wed, 29 Apr 2026 07:56:21 +0200 Subject: [PATCH 5/5] Re-center content inside full-width download card Keep the card spanning the full content width, but center its inner title, description, button, and footer text for a cleaner look. --- content/quickstart.py | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/content/quickstart.py b/content/quickstart.py index 58f0ae5..c8672e2 100644 --- a/content/quickstart.py +++ b/content/quickstart.py @@ -26,7 +26,7 @@ def render_windows_download_box(app_bytes: bytes) -> None: st.markdown( """ -

+

Want to run free and open DDA analysis offline?

""", @@ -46,18 +46,21 @@ def render_windows_download_box(app_bytes: bytes) -> None: unsafe_allow_html=True, ) - st.download_button( - label="📥 Download for Windows", - data=app_bytes, - file_name="OpenMS-App.zip", - mime="application/zip", - type="secondary", - help="Download OpenDDA for Windows systems", - ) + cols = st.columns([2, 3, 2]) + with cols[1]: + st.download_button( + label="📥 Download for Windows", + data=app_bytes, + file_name="OpenMS-App.zip", + mime="application/zip", + type="secondary", + use_container_width=True, + help="Download OpenDDA for Windows systems", + ) st.markdown( """ -
+
Extract the zip file and run the installer (.msi) to install the app. Launch using the desktop icon after installation.
Even offline, it's still a web app - just packaged so you can use it without an internet connection. @@ -75,6 +78,7 @@ def render_windows_download_box(app_bytes: bytes) -> None: border-radius: 8px !important; padding: 1.5rem !important; margin: 1rem 0 !important; + text-align: center !important; box-shadow: 0 2px 4px rgba(0,0,0,0.05) !important; }}