Repository navigation
Add JSON parameter files and complete the GUI workflow (#287) - #297
Merged
martin-raden merged 13 commits intoOct 26, 2026
Merged
Conversation
Member
|
thanks, please extend with the following idea within a new PR targeting this branch "feat/287-json-gui-review"
new idea to implementI want the user to be able to run and compare different parameter setting and results. thus they have to be (temporarily) preserved in the browser memory.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Addresses the October 23 review of #287. This PR targets
feat/286-wasm-webinterfaceand has a separate implementation commit for each of the seven requested sections.IntaRNA now reads portable JSON parameter files with embedded input text, and the GUI uses that format for WASM calls, Load/Store, examples and reproducible ZIP exports. Existing key/value parameter files remain supported.
Changes
webinterface/togui/, including imports, documentation, staging and the combined Pages deployment at/IntaRNA/gui/.--parameterFile. Reuse native option validation and CLI precedence; apply file personalities before selecting defaults. Embed FASTA, accessibility, SHAPE and ViennaRNA energy-parameter text with temporary files owned for the full prediction lifetime. Reject malformed schemas, duplicate keys and recursive parameter files.parameter.jsonand output files, with compiled versions and runnable reproduction commands in JSON_commentmetadata.The JSON format and the Boost.JSON vs. nlohmann/json decision are documented in
doc/json-parameters.md. The pinned, unmodified nlohmann/json 3.12.0 header adds no linked/system dependency and keeps the current Boost minimum. Its license and checksums are included. Matching local WASM builds grew by 145,234 bytes raw / 41,504 bytes gzip; the document records versions and reproduction details.Validation
make tests -j2, all 9 API/CLI groups passed. The existing out-of-tree CLI harness required tracked fixtures linked into each build'stests/datadirectory. Focused JSON checks also passed after the final header adjustment.npm test --prefix gui: 18 tests passed.node scripts/wasm/smoke.mjsandnode scripts/wasm/smoke-protocol.mjspassed. Fresh-engine JSON replay reproduced CSV and every additional output byte for byte, including multi-FASTA, signed indices, SHAPE/accessibility inputs and text reports.make distcontents, vendor checksums andgit diff --checkpassed.JSON comment headers use ordinary
_commentdata so files remain strict JSON. The browser accepts the settings it can represent and explicitly rejects native-only settings or external file paths; unfinished forms can be stored, with full job validation at Compute. Binary.agzaccessibility caches remain available by native filesystem path; embedded accessibility uses text.