@platforma-open/milaboratories.repertoire-mutation-heatmap.block 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,13 +1,13 @@
1
1
  # Overview
2
2
 
3
- Visualizes the per-variant repertoire produced by the **Amplicon Repertoire Profiling** block as mutation-enrichment heat maps. It is built for deep mutational scanning (DMS), phage or yeast display selections, and affinity-maturation campaigns — wherever you need to see *which mutations are enriched* across a designed antibody/TCR library.
3
+ Maps the per-variant repertoire produced by the **Amplicon Profiling** block onto its parent (reference) sequence, position by position and residue by residue. It is built for deep mutational scanning (DMS), phage or yeast display selections, and affinity-maturation campaigns — wherever you need to see *which mutations matter* across a designed antibody/TCR library.
4
4
 
5
- The headline view is a position × residue heat map: for every position in a parent (reference) sequence, each cell summarizes the variants carrying a given residue at that position. Cells are coloured by aggregated abundance, or — by default — by per-position **state frequency**, the canonical enrichment readout in which each position column sums to one. The map is faceted by parent, since positions are only comparable within the same reference frame.
5
+ Both views share the same frame: X is the position in the parent sequence, Y is the residue. The whole plot is scoped to one parent, picked in Settings, because positions are only comparable within the same reference frame. The parent residue at each position rides under the X axis as an annotation track, so the reference sequence reads straight off the map; where the profiler supplied a region scheme, a region-membership track sits alongside it and shows the domain boundaries.
6
6
 
7
- A live filter selects the variant subset before aggregation and shows it **side by side with the unfiltered baseline**. Restrict the subset by sample or selection round, or by a per-variant property range — for example a Tite-Seq dissociation constant (Kd) — to ask "which mutations are enriched among the high-affinity binders?". Changing the filter re-runs the aggregation. Cells can instead be coloured by the **mean of a per-variant property** (such as binding affinity) across the variants carrying each residue, turning the same map into a property landscape.
7
+ The **Single Mutation Landscape** plots per-variant scores, such as a binding affinity from Tite-Seq or an averaged-bin value from Sort-Seq, supplied by an upstream assay block. Only single-mutant variants are used, so each cell holds the value of the one variant carrying exactly that substitution. Nothing is averaged over genetic backgrounds, which makes the map read as a per-mutation effect rather than a population summary. Cells that no single mutant covers stay empty. Several scores render as side-by-side panels sharing one colour scale, so compare scores measured in the same units.
8
8
 
9
- A second heat map shows known-variant × sample abundance, rendered directly from the profiler's pre-aggregated counts — useful for tracking designed variants across samples or selection rounds.
9
+ **Enrichment Analysis** compares selection rounds. Given the per-round, per-variant frequency columns exported by an upstream Enrichment block, it shows the log2 fold change of residue composition in each round against the baseline round. One panel per non-baseline round; positive and negative changes are coloured on a diverging scale, so residues gaining and losing ground separate at a glance.
10
10
 
11
- This block consumes the outputs of the Amplicon Repertoire Profiling block directly; pair the two to go from raw amplicon reads to interpretable enrichment maps. Filtering or colouring by a measured property additionally uses a per-variant property column (e.g. a Kd) supplied by an upstream assay block.
11
+ This block consumes the outputs of the Amplicon Profiling block directly; pair the two to go from raw amplicon reads to interpretable mutation maps.
12
12
 
13
13
  This block is built on the Platforma SDK and its GraphMaker visualization engine, developed by MiLaboratories Inc. For more information, please see the [MiLaboratories website](https://milaboratories.com/).
Binary file
@@ -1 +1 @@
1
- {"schema":"v2","description":{"id":{"organization":"milaboratories","name":"repertoire-mutation-heatmap","version":"1.1.0"},"components":{"workflow":{"type":"workflow-v1","main":{"type":"relative","path":"main.plj.gz"}},"model":{"type":"relative","path":"model.json"},"ui":{"type":"relative","path":"ui.tgz"}},"meta":{"title":"Deep Mutational Scanning","description":"Visualizes deep mutational scanning libraries as position × residue mutation-enrichment heatmaps over a live-filtered variant subset, plus a known-variant × sample abundance heatmap.","longDescription":{"type":"relative","path":"description.md"},"logo":{"type":"relative","path":"block-logo.png"},"url":"https://github.com/platforma-open/repertoire-mutation-heatmap","support":"mailto:support@milaboratories.com","tags":["downstream","dms","antibody"],"organization":{"name":"MiLaboratories Inc","url":"https://milaboratories.com/","logo":{"type":"relative","path":"organization-logo.png"}}},"featureFlags":{"supportsLazyState":true,"supportsPframeQueryRanking":true,"requiresUIAPIVersion":3,"requiresModelAPIVersion":2,"requiresCreatePTable":2,"requiresPFramesVersion":1001031,"requiresPFrameSpec":true,"requiresPFrame":true,"requiresDialog":true}},"timestamp":1782926986690,"files":[{"name":"main.plj.gz","size":478323,"sha256":"5F1C80351A2D8A656AA43BB026E6A8331EDA2D4221950D70E6A491E32FCAAA0D"},{"name":"model.json","size":359085,"sha256":"501EC567107D1198CAB2D828960686FD8AC92A419E1BE506C362B98A297C8329"},{"name":"ui.tgz","size":6171204,"sha256":"438EBA2B211081150C6BD681165B3BCE8163AC0B75333156A4CB6FC3C5665B8D"},{"name":"organization-logo.png","size":24439,"sha256":"FA71390C77C91E4B7FAAE5640D00F92F1E3F2869296F68B6040DD7CC549A50B5"},{"name":"description.md","size":2102,"sha256":"BD3FDC5BDABC99A900BB9B012B04B226598A8FCABF20ED0597552CE4605A7D89"},{"name":"block-logo.png","size":21527,"sha256":"6BB33BAF0CD039549661B51AE490373BE60D1811EC71F5023400928293BC2427"}]}
1
+ {"schema":"v2","description":{"id":{"organization":"milaboratories","name":"repertoire-mutation-heatmap","version":"1.1.2"},"components":{"workflow":{"type":"workflow-v1","main":{"type":"relative","path":"main.plj.gz"}},"model":{"type":"relative","path":"model.json"},"ui":{"type":"relative","path":"ui.tgz"}},"meta":{"title":"Mutation Explorer","description":"Maps deep mutational scanning libraries at position × residue: a mutation landscape of per-variant scores over single mutants, and per-position residue enrichment across selection rounds.","longDescription":{"type":"relative","path":"description.md"},"logo":{"type":"relative","path":"block-logo.png"},"url":"https://github.com/platforma-open/repertoire-mutation-heatmap","support":"mailto:support@milaboratories.com","tags":["downstream","dms","antibody"],"organization":{"name":"MiLaboratories Inc","url":"https://milaboratories.com/","logo":{"type":"relative","path":"organization-logo.png"}}},"featureFlags":{"supportsLazyState":true,"supportsPframeQueryRanking":true,"requiresUIAPIVersion":3,"requiresModelAPIVersion":2,"requiresCreatePTable":2,"requiresPFramesVersion":1001031,"requiresPFrameSpec":true,"requiresPFrame":true,"requiresDialog":true,"requiresColumnsCollection":true},"kind":"@platforma-open/milaboratories.repertoire-mutation-heatmap.kind@1.0.0"},"timestamp":1787673140899,"files":[{"name":"main.plj.gz","size":480280,"sha256":"0EA9D755F9AA075664FE494AB3CA0C865F609BC49175434FAA39141F8E7C898F"},{"name":"model.json","size":472592,"sha256":"2A23BBB6F27EE3081AF6C7CEDED8820DEE6FA9446F3180DF1CB8F1E86FCB18D5"},{"name":"ui.tgz","size":6249158,"sha256":"3D4781EF10BC552646C86A8CA96FD0A93E53BD86D62937D961CAD7CE6D0CBE02"},{"name":"organization-logo.png","size":24439,"sha256":"FA71390C77C91E4B7FAAE5640D00F92F1E3F2869296F68B6040DD7CC549A50B5"},{"name":"description.md","size":2219,"sha256":"6C23EAAF0CBFD6AFC4508AD31B5FCF5F4C8C4A69750F3D02381001AD8AC51989"},{"name":"block-logo.png","size":21527,"sha256":"6BB33BAF0CD039549661B51AE490373BE60D1811EC71F5023400928293BC2427"}]}