View on GitHub

IntaRNA

Efficient target prediction incorporating accessibility of interaction sites

CopomuS Mutation Design in the browser

The Mutation Design task integrates the existing CopomuS scientific workflow without a server or native subprocess. It accepts exactly one query and one target FASTA record, normalizes DNA T to RNA U, and rejects ambiguous N bases. CopomuS-specific controls live below the two sequence inputs:

An explicit encoding replaces candidate selection, filters and generation, as in the CLI. The advanced Seed, Model & Energy, Query and Target tabs configure the IntaRNA calls. IntaRNA output-selection tabs are hidden because CopomuS chooses the columns and position profiles required by its measures.

Runtime boundary

copomus-worker.js owns the complete run so aborting terminates both runtimes. It loads the checksum-pinned, same-origin Pyodide distribution and the staged Python modules under /python. copomus.browser.run() reuses the CLI mutation, filter, measure, comparison, ranking and TSV helpers. Only the process-launch adapter changes: Python sends a bounded JSON request to the worker and awaits a fresh IntaRNA WebAssembly instance. The worker validates this private protocol, embeds the mutated sequences in an IntaRNA-parameters-v1 document, and returns CSV/profile text as JSON. No shell command, upload, CDN or external service is used for computation.

Wildtype output is reused across candidates, matching the CLI optimization. Every candidate evaluates wildtype/wildtype, wildtype/target-mutant, query-mutant/wildtype and compensatory-mutant pairs. Browser runs are capped at 100 generated mutations because each candidate can require several complete folding runs; larger screens remain available through python/CopomuS.py.

Results and reproducibility

The sortable/filterable table contains the complete extended CopomuS TSV. The first rank-sorted mutation is selected automatically when results arrive; select another row or View button to change it. The visualization shows the wild-type interaction once in vaRRI, with both designed substitutions annotated at their original signed sequence coordinates in dark green. A compact Plotly bar chart beside it compares the ww, wm, mw and mm interaction energies and marks ww with a dotted baseline; unavailable interactions remain empty. Session ZIPs contain parameter.json and copomus-mutations.tsv. The JSON keeps native IntaRNA settings and records the task and CopomuS settings under gui, so Load restores the complete editable run. As with other GUI sessions, all data stays in the tab and disappears on reload unless downloaded.

The WASM workflow vendors no generated runtime files in Git. Build staging downloads Pyodide 314.0.7 from its npm release, verifies the pinned SHA-256, stages only the core runtime/standard library and includes the MPL-2.0 notice. build-info.json records its version and every staged Pyodide asset digest.