Skip to content

Integrate CopomuS into the browser GUI - #309

Merged
martin-raden merged 2 commits into
masterfrom
feat/307-copomus-gui
Oct 26, 2026
Merged

martin-raden merged 2 commits into
masterfrom
feat/307-copomus-gui

Conversation

@Alexander-Mitrofanov

Copy link
Copy Markdown
Collaborator

Fixes #307

Summary

  • add Mutation Design as a third browser task with single-pair inputs and native CopomuS controls
  • run the existing Python mutation, filter, measure, ranking, and TSV workflow in self-hosted Pyodide while replacing subprocess predictions with validated JSON calls to IntaRNA WASM
  • retain ranked mutation sessions with filtering, sortable extended columns, TSV and ZIP export, and four-state vaRRI visualization

Implementation notes

  • pins Pyodide 314.0.7 by archive and license SHA-256 and records every staged runtime digest in build provenance
  • preserves the CopomuS CLI by sharing only ranking and tabular-output helpers
  • limits generated browser runs to 100 mutations; larger workflows remain available through the CLI
  • stores task and CopomuS settings in the existing portable parameter JSON format

Validation

  • npm test --prefix gui: 27 passed
  • python3 -m unittest discover -s python/tests -v: 47 passed, 4 skipped because native IntaRNA is not on PATH
  • python3 scripts/wasm/test-downloads.py: 3 passed
  • python3 scripts/wasm/test-vienna-release.py: 7 passed
  • real staged Chromium flow: prediction, evaluation, Mutation Design, Pyodide-to-WASM profile calls, measure ordering, exports, responsive layout, abort and session lifecycle passed
  • JavaScript syntax, shell syntax, git diff checks, and Autotools initialization passed

A clean local WASM cross-compile was not repeated because emcc is unavailable in this environment. The browser validation used a real staged IntaRNA 3.4.1 / ViennaRNA 2.7.2 WASM build; CI rebuilds the full artifact and runs the repository Chromium and Firefox suite.

@martin-raden
martin-raden merged commit 89d64d6 into master Oct 26, 2026
6 of 7 checks passed
@martin-raden
martin-raden deleted the feat/307-copomus-gui branch October 26, 2026 20:41
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.

integrate Copomus into gui

2 participants