Skip to content

feat: add HplcTrace and WellPlate spinners - #39

Merged
evanroyrees merged 8 commits into
mainfrom
feat/flicker-hplc-well-plate
Oct 16, 2026
Merged

evanroyrees merged 8 commits into
mainfrom
feat/flicker-hplc-well-plate

Conversation

@evanroyrees

@evanroyrees evanroyrees commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

Two new scientific spinners, each in two forms.

dlc.flicker (7x7 dot-matrix presets, next to MassSpec and Chromatogram)

  • HplcTrace: a liquid chromatography detector trace scrolling by, a tall compound then a small one eluting off a flat baseline. Not the thin-layer Chromatogram.
  • WellPlate: a pipette head filling a microplate well by well, row by row, then the rows emptying. The dots are the wells, so it is 4x7, not a full 96-well layout.

dlc.lab (new family, shown in the gallery as Phyla Tech): PhylaTech's own SVG drawings, since the dot grid cannot hold them and no existing family fits. It wraps no upstream package.

  • HplcTrace: a pen draws an HPLC/UPLC trace across retention time, tailing peaks of different heights, each apex marked as it passes.
  • WellPlate: a real 96-well plate (8x12, A1 corner cut off) that a pipette fills well by well, then empties in the same order. The pipette only comes back once every well is empty (about 13s a loop).

Pure CSS animation, so rate and playing follow the shared contract. Both take size (width in px), color, on_opacity, rate, playing, aria_label and className; WellPlate also takes off_color and off_opacity for its empty wells.

README, NOTICE and inventory updated (474 components; 63 flicker, 2 lab). The committed build is regenerated. I only ran the fast metadata and preset tests locally; the full suite is left to the PR checks.

Two new Field presets for dlc.flicker, both original 7x7 frame loops:

- HplcTrace: a liquid chromatography detector trace scrolling by, a tall
  compound then a small one eluting off a flat baseline. Distinct from
  Chromatogram, which is thin-layer chromatography.
- WellPlate: a pipette head filling a 4x7 microplate well by well, row by
  row, then the rows emptying and the head parking for the next plate.

Counts updated: 63 flicker presets, 472 components.
The 7x7 flicker-dot player has no room for a 96-well plate, so WellPlate is
now its own SVG component rather than a preset: 8 rows by 12 columns on a 9mm
pitch at SBS proportions, the A1 corner cut off, a pipette head filling each
well in plate order, the full plate held, then emptied in the same order while
the next fills in behind it.

Pure CSS animation, so the rate and playing contract holds with no JS timer.
dlc.flicker.DRAWN lists spinners drawn this way; registry, gallery and tests
read category and blurb through it.
@evanroyrees evanroyrees changed the title feat(flicker): add HplcTrace and WellPlate presets feat(flicker): add HplcTrace and WellPlate spinners Oct 16, 2026
Keep dlc.flicker.HplcTrace and dlc.flicker.WellPlate as 7x7 dot-matrix
presets, and move the detailed SVG drawings into a family of their own,
dlc.lab, shown in the gallery as Phyla Tech (no existing family fits and
none wraps an upstream package).

- HplcTrace: a pen draws an HPLC/UPLC detector trace across retention time,
  tailing peaks of different heights, each apex marked as it passes
- WellPlate: a 96-well plate (8x12, A1 corner cut off) that a pipette fills
  well by well, then empties in the same order
- pure CSS animation, so rate and playing follow the shared contract
- registry, gallery credits, icon, README, NOTICE and inventory updated
@evanroyrees evanroyrees changed the title feat(flicker): add HplcTrace and WellPlate spinners feat: add HplcTrace and WellPlate spinners Oct 16, 2026
The pen draws the trace by length, not by x, so tall early peaks put the
later apexes further along in time than their place on the retention axis.
Peaks 5 and 6 were marked before the pen arrived. Time each mark by how far
along the path its apex is; all six now land just after the pen.
Each well now has its own keyframes on one shared clock, so the plate fills,
stands full, drains in fill order, and sits bare for a beat before the
pipette returns to A1. Before, a well refilled as soon as it drained, so the
next plate started filling while the last was still emptying.
They only styled the faint dashed baseline guide, so the controls did almost
nothing on a trace that has no empty state. The guide keeps a fixed faint
opacity in the trace color. WellPlate keeps both for its empty wells.
The faint dashed line under the trace added nothing a real chromatogram
shows. The axes and the trace are all that is drawn now.
The signal axis gets ticks like the retention-time axis: the baseline, then
quarters of the chart's height.
@evanroyrees
evanroyrees merged commit 0ab1a5f into main Oct 16, 2026
1 check passed
@evanroyrees
evanroyrees deleted the feat/flicker-hplc-well-plate branch October 16, 2026 19:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant