HistDiff_Processor Svelte Themes

Histdiff_processor

A Svelte/Rust Desktop app for the HistDiff pipeline

HistDiff Processesor: A Local HistDiff pipeline

by Derfel Terciano

What this is

This is a localized version of the full HistDiff pipeline for Cytological Profiling. The idea here is to make it easier for labs to process their own data locally. This means no web servers, no middle man for data, just pure HistDiff processing at your computer any where!

Planned features:

  • Heat map visualization!

    • See your HistDiff ASAP!
  • Score distribution

    • Visualize the distribution of the HistDiff scores.
  • Quality control

    • Visualize the activity levels of your controls.
    • Identify any striping or plate effects in assay plate.
    • Re-run histdiff if any striping is seen on plates.
    • See PCA loadings of controls and experiment.
  • Once satisifed with results, users can export their experiements.

  • Planned fun feature:

    • Multiplate processing

TO-DO:

  • Implement user input/config
    • File selection
    • Control definitions
      • create a pop out to select negative controls
      • construct plate assay replica
      • implement option for 96-well plate (optional)
      • Add functionality for persistent well selection state
      • TODO: fix styling
    • Additional meta information to ignore
    • Well name column
  • Implement Rust to Svelte API
    • Rewrite HistDiff input to "mimick" histdiff binary
      • RUST SIDE IMPLEMENTATION
        • Implement formatter to make data acceptable
        • Alogrithm was re-written to histdiff_core. The input is raw cell data, processing is done on the fly
        • [ ] Output formatted data to a temp file
          • (Alternatively, try and hold data into memory and pass it into HD?) This doesn't seem like a good idea but this the only way i can think of to not produce a temp file
        • [ ] Modify rust HD to accept temp file OR modify HD to take in raw DataStruct
  • Implement logging
    • Implement logging in rust processes
    • Add global emit and listening for logging
    • Prevent main UI interaction when process is running
    • Implement persistent logging
    • Modify rust hd core to use infos instead of traces
  • Implement User Output functionality
    • Store the histdiff output globally in the rust backend or use a different approach
    • Implement UI for user to output HistDiff data .
      • Call a file dialogue for users to choose where to output data
  • Implement visualization and visual analysis

Major Bugs:

  • HistDiff panicks at only 1 cntrl well selected.
    • ISSUE: modify UI to format the control and well names to remove any leading zeroes.
    • Format well control input so histdiff doesn't panic.

Top categories

Loading Svelte Themes