Skip to content

Data Interfaces

Every component receives pre-computed data through a typed data prop. Components never fetch, parse, or compute data on their own.

Type Modules

All types are exported from the package root:

ts
import type { PlasmidData, Part, CutSite } from '@molbiohive/hatchlings';
ModuleTypesComponents
sequencePlasmidData, SequenceData, DiffData, ProteinSequenceData, Part, CutSite, Translation, AlphabetPlasmidViewer, SequenceViewer, DiffViewer, ProteinSequenceViewer, RestrictionMap
gelGelData, GelLane, GelBand, GelType, StainTypeGelViewer
traceTraceData, TraceChannel, TraceAlignment, TraceMismatchTraceViewer, MultiTraceViewer
alignmentAlignmentData, AlignmentSequence, ConservationScoreAlignmentViewer
platePlateData, Well, PlateFormatPlateHeatmap
kineticsKineticsData, KineticsCurve, BindingParams, DoseResponseData, MeltingCurveData, ITCDataBindingKineticsViewer, DoseResponseCurve, MeltingCurve, ITCViewer
chromatographyChromData, ChromTrace, ChromPeak, SpectrumData, ElectropherogramData, TimeSeriesDataChromatogramViewer, SpectrumViewer, ElectropherogramViewer, TimeSeriesPlot
interactionVolcanoData, HeatmapData, SeqLogoData, ScatterData, FlowData, DistributionData, WaterfallBarVolcanoPlot, HeatmapViewer, SeqLogo, ScatterPlot, FlowCytometryViewer, DistributionPlot, WaterfallPlot
cloningCloningNode, CloningAction, CloningSource, CloningParadigmCloningStrategyViewer, CloningHistoryViewer
proteinProteinStructureData, ProteinSelection, ProteinLabelProteinViewer
compositionCompositionDataCompositionChart
utilityHoverInfo, InfoItemShared tooltip model

Core Shared Types

Part

Annotated region on a sequence — genes, promoters, primers, misc features.

FieldTypeRequiredDescription
idstringnoUnique identifier
namestringyesDisplay name
typestringyesFeature type ('CDS', 'promoter', 'primer_bind', 'rep_origin', etc.)
startnumberyesStart position (0-indexed bp)
endnumberyesEnd position (exclusive)
strand1 | -1yesSense (1) or antisense (-1) strand
colorstringnoCSS color for rendering
labelstringnoOverride display label (defaults to name)
notestringnoTooltip description
tmnumbernoMelting temperature (primers)
sequencestringnoOligo sequence (primers — includes overhangs)
bindingStartnumbernoStart of binding region (primers with overhangs)
bindingEndnumbernoEnd of binding region
mismatchesnumber[]noPositions of mismatched bases (absolute bp)

Used by PlasmidViewer, SequenceViewer, DiffViewer, RestrictionMap, and CloningNode.

CutSite

Restriction enzyme recognition and cut site.

FieldTypeRequiredDescription
idstringnoUnique identifier
enzymestringyesEnzyme name (e.g. 'EcoRI')
positionnumberyesStart of recognition site (0-indexed bp)
endnumbernoEnd of recognition site
strand1 | -1yesStrand of recognition site
overhangstringnoOverhang sequence after cut
cutPositionnumbernoSense strand cut offset within recognition site
complementCutPositionnumbernoComplement strand cut offset
recognitionSeqstringnoRecognition sequence (e.g. 'GAATTC')
senseCutOffsetnumbernoSense cut offset (0-indexed from 5' end)
complementCutOffsetnumbernoComplement cut offset (0-indexed from sense 5' end)

Translation

Translated reading frame displayed as amino acids below the sequence.

FieldTypeRequiredDescription
startnumberyesStart position (bp)
endnumberyesEnd position (bp)
strand1 | -1yesReading direction
aminoAcidsstringyesPre-computed amino acid string
frame0 | 1 | 2noReading frame offset

Alphabet

ts
type Alphabet = 'dna' | 'rna' | 'protein';

Used by SequenceViewer, AlignmentViewer, and DiffViewer to select residue coloring and validation.

PlasmidData

FieldTypeRequiredDescription
namestringyesPlasmid name
sizenumberyesTotal length in bp
topology'circular' | 'linear'yesDisplay mode
seqstringnoFull nucleotide sequence
partsPart[]yesFeatures and primers
cutSitesCutSite[]yesRestriction sites

SequenceData

FieldTypeRequiredDescription
seqstringyesNucleotide sequence
partsPart[]yesFeatures and primers
cutSitesCutSite[]yesRestriction sites
translationsTranslation[]yesAmino acid translations
alphabetAlphabetno'dna' | 'rna' | 'protein'
topologystringno'linear' | 'circular'

GelData

FieldTypeRequiredDescription
lanesGelLane[]yesLanes with bands
gelTypeGelTypeyes'agarose' | 'sds-page' | 'native-page'
stainStainTypeyes'ethidium' | 'sybr-safe' | 'sybr-gold' | 'coomassie' | 'silver'
gelPercentnumbernoGel percentage

TraceData

FieldTypeRequiredDescription
baseCallsstringyesCalled bases
qualityScoresnumber[]yesPhred quality per base
channelsTraceChannelyes{ A, C, G, T } signal arrays
peakPositionsnumber[]yesPeak center positions
alignmentTraceAlignmentnoAlignment to reference
labelstringnoTrace label
trimQualitynumbernoQuality trim threshold

AlignmentData

FieldTypeRequiredDescription
sequencesAlignmentSequence[]yesAligned sequences
alphabetAlphabetno'dna' | 'rna' | 'protein'
conservationConservationScore[]noPer-position scores
annotationsAlignmentAnnotation[]noRegion annotations
namestringnoAlignment name

DiffData

FieldTypeRequiredDescription
seqAstringyesFirst sequence
seqBstringyesSecond sequence
nameAstringnoLabel for first sequence
nameBstringnoLabel for second sequence
featuresAPart[]noFeatures on sequence A
featuresBPart[]noFeatures on sequence B
alphabetAlphabetnoSequence alphabet