Files
Jungfraujoch/frontend
leonarski_f e374ea269f Rugnux live page: MR scores and the placed model right under the timeline, carved difference maps
- Fo-Fc (and the anomalous map) are carved within the same 4.5 A of the atoms as 2Fo-Fc, not only
  cropped to the model's box + 6 A, and Fo-Fc starts at +-3.5 sigma: uncarved at 3 sigma it filled
  the frame with noise peaks. A departure from AareDB's viewer, which carves 2Fo-Fc only.
- The anomalous map is on by default only where the status says the data carry anomalous signal.
- The model section (molecular-replacement scores + viewer) sits directly under the timeline and
  slides in when the run ends with a model; the stage stays dark until model and maps are in, then
  fades up while the camera eases in from further out and turned ~35 deg (1.6 s, ends exactly at the
  reset view). prefers-reduced-motion turns all of it off.
- The page uses up to 2400 px instead of the 1300 px column; Processing and Result are 1:2, the
  summary tiles flow into as many columns as fit, the viewer is clamp(520px, 64vh, 820px) tall.
- Score tiles: placement (copies, group, MR time), TFZ (RFZ, LLG-Z, search resolution), R-free
  (R-work, unrefined), CC(model, data), fit over random orientations, 2Fo-Fc at atoms, and the
  strongest anomalous peak only where there is anomalous signal.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015CeEGgpKdfkCTJb3YNMJcu
(cherry picked from commit 3bb891c60acd2c5618bbc461fabcb7513f5df947)
2026-10-24 19:06:04 +02:00
..
2026-07-11 07:19:11 +02:00
2026-06-23 20:29:49 +02:00
2024-10-05 13:14:49 +02:00
2025-11-28 12:47:35 +01:00
2026-06-23 20:29:49 +02:00
2026-06-16 14:13:29 +02:00
2024-10-05 13:14:49 +02:00
2024-10-05 13:14:49 +02:00
2024-10-05 13:14:49 +02:00

Jungfraujoch Frontend

Building

To build web interface:

cd frontend_ui
npm install
npm run openapi
npm run build

Available Scripts

In the project directory, you can run:

npm start

Runs the app in the development mode.

The page will reload if you make edits.
You will also see any lint errors in the console.

npm test

Launches the test runner in the interactive watch mode.
See the section about running tests for more information.

npm run build

Builds the app for production to the dist folder.
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.
Your app is ready to be deployed!

npm run openapi

npm audit findings

npm audit currently reports 17 advisories (3 high, 13 moderate, 1 low). All of them live in build-time tooling and never reach the production bundle shipped to the browser. Summary of the chains:

Source dep Vulnerable transitives When it runs
@redocly/cli @opentelemetry/*, dompurify (via redoc), ws (via simple-websocket), js-yaml, protobufjs, @babel/core npm run redocly / redocly4broker — static OpenAPI HTML generation
vite esbuild@0.27.x Dev server and dep pre-bundling. Production build uses Rollup.
vite-plugin-svgr @babel/core, js-yaml (via cosmiconfig) Vite build plugin
openapi-typescript-codegen js-yaml npm run openapi — TS client generation

Notes on the high-severity items:

  • esbuild GHSA-gv7w-rqvm-qjhr is a Deno-specific RCE via NPM_CONFIG_REGISTRY; GHSA-g7r4-m6w7-qqqr is an arbitrary-file-read in the dev server on Windows. Neither applies to a Linux build of the production bundle.
  • ws GHSA-96hv-2xvq-fx4p only matters when simple-websocket opens a socket, which happens during docs generation, not at runtime.

npm audit fix cannot resolve any of these without downgrading @redocly/cli (no real fix) or jumping vite to a major that switches the bundler to Rolldown.