Read straight from the repository's own Changelog at build time, so this page cannot flatter the project by being out of date.
Phylogenetic trees can now be decorated: color or collapse a clade from the node menu, see the alignment beside the tips, and draw a NeXML file's taxon annotations as a strip or ring; large trees open legible and multi-tree Newick files…
Power and Sample Size can now plan a whole RNA-seq experiment at a false discovery rate, using the exact negative-binomial test instead of a normal approximation, and can average the power over a pilot's own genes.
RNA-seq differential expression can now shrink fold changes with apeglm, ashr or DESeq2's normal prior, matching DESeq2 on every gene, and the MA plot draws the shrunken values.
RNA-seq differential expression now offers edgeR's quasi-likelihood F-test and limma-voom beside DESeq2, each matching the Bioconductor package on every gene, with their own dispersion and mean-variance plots.
The hypothesis ledger now ranks the tests you could run next by how much each would teach you, in bits, and separately by what it teaches per unit of cost.
New Trade-offs panel: give it a table of candidates and the columns to push up or down, and it shows which ones nothing else beats on every count, what beats each of the rest, and how spread out the best ones are.
Power and Sample Size now sizes RNA-seq studies: biological replicates per group from read depth, within-group variation and fold change, over a whole grid, with the depth past which more sequencing stops helping.
New Power and Sample Size panel: how many replicates an experiment needs, or what power a fixed design has, for thirteen tests, with the power curve and the R call that reproduces every answer.
Power and Sample Size can take its effect from a pilot table in the project: Hedges' g, Cohen's d or Glass's delta with its confidence interval, and the design sized at the estimate or at the cautious end of the interval.
The genetic circuit panel now draws its gates as logic symbols coloured by repressor, its construct as SBOL Visual glyphs, and its predicted output per input state as a log-scale chart.
The keyboard cheat-sheet lists each editing key against its description again, and the EBI alignment step's rows output now carries the aligned sequences a tree step needs.
Agarose gels keep every band in size order at the edge of what the gel resolves, and every ladder mark carries its own label, joined to its band when the marks crowd together.
Fragment analysis: the PowerPlex 16 starter ladder now opens with its kit named and every allele labelled on the trace, labels no longer overprint each other, amelogenin reads X/Y on the plot as in the table, and each dye's axis is titled…
Gibson starters open on their homology arms instead of a tower of restriction-site labels, and the Result tab's product ring names every part and junction on its own arc, with the carried features one switch away.
Golden Gate builds too long for the assembly strip now show every part and every fusion site at once, and circular map labels no longer swell on sparse maps.
Grammar Assembly constructs now keep their parts' notes and primers, and a part's domestication changes are drawn on the map as small markers named for the restriction site they removed, such as MlyI-free, instead of grey MUT tags.
Mass spectrometry: the starter now opens on the annotated MS/MS spectrum, the plot no longer runs under the tool panel, and Mirror theoretical draws the peptide's b and y ions below the axis facing the peaks they explain.
Population Genetics estimates ancestry coefficients (ADMIXTURE-style bars, K chosen by cross-entropy), draws a scree beside the PCA, recolors by any column of the sample table, and its starter opens on a finished PCA.
Sanger traces start without the amino-acid rows, and once you verify a read against a reference its differences are boxed right on the trace.
SBOL files now draw each part as what it is: a promoter, terminator, RBS or coding sequence opens with its own feature type and shape instead of a generic feature.
Variant calls now appear on the sequence map: one lollipop per call, coloured by type and as tall as its QUAL or allele frequency, following the table's filters.
Primers now draw in their own colours at full strength on every map, so a file's forward and reverse primers read as two colours instead of white outlines, and the vector contamination starter opens with its 117 lab primers hidden so the…
Protein analysis draws the chain across the membrane as a snake plot, opens on the hydropathy profile, and UniProt entries now show their features in one lane per section, with variants colored by clinical class on request.
The Graph tracks sample now opens on its subject: GC skew and cumulative GC skew are drawn on the chloroplast genome as it lands, with no second properties card over the map.
The small-molecule panel shows RDKit's chi2v and chi2n again, now that RDKit computes them correctly, and an indexed VCF paired with a BAM or BCF index now says so instead of returning empty regions.
qPCR Curve to Cq can read Cq at a fluorescence threshold, takes known template amounts for a calibration factor, plots every reaction on one chart with a log axis, and Melt shows every well's derivative coloured by outcome.
The app loads faster: the editor now fetches about 2.4 MB of code instead of 6.4 MB on a cold open, the home page about 1.6 MB instead of 4.9 MB, and the Synthesis block's moving edge no longer slows long panels
The linear and sequence views now draw features, ORFs, short features and cut sites the same way as the circular map, and residue numbers have their own switch under Translations.
The sequence view draws one translation row per reading frame: a CDS inside an ORF becomes a named bracket on it, rows are named at the left, and the start and stop codons are marked.
The structure viewer can now colour an antibody-antigen interface by its typed atomic contacts, checked against Arpeggio.
Assembly Plan sample projects now simulate their shipped plan on open and show its build order full-size on the canvas, and circular maps no longer cut a feature's name inside its arc.
Copy-number segmentation (CBS, PCF and PELT) now reproduces DNAcopy, copynumber and changepoint exactly, including on heavily tied data and with zero-count Poisson segments.
Recombination Cloning: Open in new tab puts a product beside its inputs with its own lineage, the reaction figure marks homology arms, and an LR's two products read as one exchange.
Starter projects now open on a finished run instead of an untouched panel, and a starter built on a many-record file opens one tab instead of hundreds.
Statistics: p-values and quantiles at very large sample sizes (chi-square, t and F with hundreds of thousands of degrees of freedom) now match R, where the chi-square tail could be 19% off.
The circular map has a new look: feature arrows with flared heads, small features drawn as SBOL glyphs, ORFs as start-to-stop lines, names set along their feature where there is room, leaders and names in each feature's own colour, and…
The Dot Plot sample project now opens with its all-against-all grid already plotted on the canvas, instead of waiting for you to press Plot the grid.
Ambiguous sequence search no longer highlights every base when the query is a dash, and matches a gap in a protein search.
Digests no longer show a phantom full-length band when a recognition site sits flush with the end of a linear sequence, and degenerate enzymes such as GdiII no longer count one palindromic site as two cuts.
FASTQ files named .fq, written in capitals or with no extension now open as reads instead of one garbled sequence, and a file with empty (fully trimmed) reads no longer fails to open.
GenBank and FASTA exports keep the links in your notes and descriptions; they used to be stripped, so even opening a record lost them.
GenBank files exported from the editor now open cleanly in Biopython and other INSDC readers, including features that cross the origin.
Gibson Assembly now accounts for every annotation on your fragments: what reached the product, what sat in an overlap and was kept once, and what a junction cut, by name.
Hairpin stability for long GC-rich oligos now matches primer3 exactly; a few 30-60 nt folds were reported with the wrong structure and energy.
Multiple sequence alignment now checks every row against its closest relative aligned on its own, and names a row the alignment scattered (such as a partial gene under global mode) with the setting that fixes it.
Phylogenetics: a wide tree now fits beside the open panel instead of running under it, and the panel says what each setting does under the method you chose.
The alignment pileup now reads spliced RNA-seq correctly: coverage follows reads across introns, unmapped mates no longer count, and Open alignment from Map Reads stops duplicating files.
The antibody domain map now draws the whole chain (variable and constant domains), colours residues by chemistry, labels every numbering position, aligns the germlines residue by residue, and adds hydropathy, Vernier zone and one row per…
The API and MCP server can now open a record the way the app does: by archive accession, by bundled sample, or from a file you send (text, base64 or a multipart upload), and a whole set of files can stand in for a project.
The chromosomal microarray scan now counts chromosomes in its progress sentence, instead of the number of segment sets the file happens to carry.
The Codon Optimizer now opens on the record's longest coding sequence, and drawing its CAI track or edit preview no longer takes an undo step or hides the plasmid's own features.
The CRISPR guide table's Rule Set 3 (total) column now matches the sort and the guide readout, the genome census shows the top 40 with a toggle for the rest, and the guide-density profile reads correctly at the end of a sequence.
Translating a coding sequence now refuses one with an in-frame stop codon instead of silently returning a truncated protein.
I am Court Naieem Fathy, I am twenty-one, and this is the thing I have been making instead of sleeping: a workbench for molecular biology that lives inside a browser tab, that asks for no account, no upload and no permission, and that keeps every sequence you open on the machine you opened it with, where it belongs.
It began as a small irritation and grew, the way small irritations do when you leave them alone with someone stubborn: the good tools cost more than a student has, the free ones are read-only, and the science itself (the cloning, the primers, the digests, the traces) kept getting locked behind a login screen. So I ported the real libraries, byte for byte, and built an editor around them.
I write. I think in long sentences and I build in short ones. Both habits ended up in here: in the copy, in the spacing, in the decision to make a restriction map look like something worth looking at rather than something merely emitted.
Everything to the left of this column is the honest record of it: every feature, every migration, every fix, dated the day it actually landed. Nothing is announced before it is real.
Court Naieem Fathy
jane* is free, and it will stay free: that is not a launch promise, it is the whole point of building it local-first in the first place.
But it is also one person, one machine, and a great many nights. If it has saved you a license fee, an afternoon, or a mangled gene name, you are welcome to put something back. I am open to sponsors, to one-time gifts from people who just want to say the thing was useful, and to recurring support from anyone who would like to see it keep growing at this pace.
Give nothing and use it forever. That offer does not expire.
The channels are not open yet — Ko-fi and the wallet addresses land here the moment they exist. Nothing on this page will ever ask you for money it cannot actually receive.