Skip to content

Releases: dl-li/LibreGene

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 12:11

This release adds a SnapGene-style double-strand view, smarter alignment-aware primer display, and a reorganized plugin system with fully declarative hooks, plus a batch of interaction fixes.

New Features

  • Show Both Strands view — SnapGene-style ruler rendering both strands; toggle from the View menu
  • Alignment-driven primer display — primers align against the template with gap/insertion placeholders; incidental edge matches dissolve into the primer's hanging tail
  • Always-expand primers mode — on by default; feature/primer expand and label settings moved from the Settings dialog to the View menu
  • Enzyme display caps — cap the number of displayed cut sites per enzyme via settings; enzymes requiring undetectable methylation (5mC/5hmC) are always marked as required
  • Plugin author field — optional, shown in the Plugins window

Improvements

  • Plugin system reorganization — plugins now live in builtin/ and example-plugin-*/, and plugin hooks are fully declarative (no more storageKey in the plugin state contract)
  • Gel dialog polish — deep-blue accent, editor-style enzyme badges, larger lane labels, and wells pushed down for multi-line enzyme names
  • Primer deletion safeguard — Backspace or the context menu asks for confirmation before deleting a primer
  • Drag selection — Tm badge rounds to whole degrees; dragging back to the origin collapses the selection
  • Ruler styling — the double-strand ruler is darker and thicker
  • README — rewritten bilingually around reorganized screenshots, including a Digest and Run Gel section

Bug Fixes

  • Delete/Backspace, typing, and paste now act on translation selections; Backspace deletes a selected primer
  • Primer hover hit area shrunk and sized to the visible band so it no longer blocks adjacent elements
  • Enzyme hover shows the per-site methylation reason
  • Wheel scrolling is contained inside sidebars and self-contained dialogs, no longer rubber-banding the window
  • The first query base in primer alignment can now align diagonally

Downloads

Platform Files Notes
macOS .dmg, .app.tar.gz Apple Silicon
Windows .msi, -setup.exe (NSIS)
Linux .flatpak amd64 + aarch64

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 12:17

This release introduces a continuous horizontal view mode, a distributable Digest and Run Gel plugin for in-silico digestion and gel simulation, a reworked menu layout, and a round of enzyme database corrections.

New Features

  • Continuous (horizontal) view mode — switch between wrap and continuous layout from the View menu; continuous mode renders the whole sequence on one line with horizontal scrolling and a dedicated feature scrollbar
  • Digest and Run Gel plugin — pick enzymes and simulate the digest on a virtual gel; ships as a self-contained distributable plugin
  • Reworked menus — View sits after Edit with ORF/GC toggles and sticky left-click; Codon Optimization moves to the Edit menu; My Enzymes lists atop Enzyme Set

Improvements

  • Distributable plugins — Dotplot is now a self-contained distributable plugin; built-in plugins collapse by default in the Plugins window
  • Continuous-mode polish — alignment labels hug the read's right edge and pin to the viewport with a fading backdrop, the hide button gets its own chip, the navigator is centred below the top scrollbar, and jumping to a site centres it in the window; feature labels clamp flush with the alignment labels' right edge
  • MCP workspace lifecycle — workspace fragments are removed when their source project (or the main window) closes
  • Resource caps — workspace fragments, input file size, and MCP connections are capped against unbounded growth

Bug Fixes

  • Corrected the AbaSI recognition site from a 1-bp C to the 22-bp CNNNNNNNNNNN/NNNNNNNNNG window
  • Corrected MlyI/SchI elucidate and TspRI/TscAI overhang length; marked PvuRts1I-family enzymes (FspEI, MspJI, SgeI, LpnPI) methylation-dependent
  • FspEI no longer shows in the on-sequence enzyme display
  • Scrollbar track presses in continuous mode continue as a drag

Downloads

Platform Files Notes
macOS .dmg, .app.tar.gz Apple Silicon
Windows .msi, -setup.exe (NSIS)
Linux .flatpak amd64 + aarch64

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 08 Oct 03:35

Integration release centered on the embedded MCP server: a session workspace for staging sequence fragments, a leaner tool surface, and one uniform response envelope — plus a round of alignment-view and sequence-editing fixes.

New Features

  • Session workspace for agents — add_to_workspace stages a project fragment (selected by feature, by region, or by enzyme digest, with overlapping annotations carried along) in a session-scoped in-memory workspace; open projects are implicit members, and sequence-taking tools accept a workspace hash (fwd7, or the swapped rev7/fwd7 pair for the reverse complement) as sequence input
  • Optional MCP authentication — bearer-token verification can be turned off, with a reworked agent setup prompt

Improvements

  • MCP tool surface consolidation — dropped list_species, close_project, search_sequence and search_enzymes; split primer inspection into test_primers (with amplicon size for fwd+rev pairs); renamed list_projects to list_workspace; every tool description follows one skeleton (purpose, inputs, Returns, caveats)
  • Uniform MCP responses — every tool answers with one envelope {ok, message, projectId?, unit?, text?, sequenceHash?, revCompHash?, ...}; counts use the ...Count suffix (mismatchCount/insertionCount/deletionCount); design_primers reports a structured product span and unit; find_orfs uses one shape in both modes; convert_sequence items carry unit and hash their output sequence
  • Leaner overview digest — single-cutter enzymes group by top-strand cut position ("N + names" per line), double-cutters are named, and the primer section lists each stored primer's sequence and type
  • Alignment view — feature bars bridge insertion slots, insertion dashes always render, and Prev/Next navigation jumps between notable sites (mismatches, insertions, deletions)
  • Plain-text protein files (.prot, .fa/.fasta) open as protein sequences

Bug Fixes

  • Chromatogram anchors sort by display direction, stopping origin-wrap backtracking
  • Alignment lane bases merge into run tspans with per-character positioning, fixing scroll jank with many reads
  • Primer display gaps consolidate via a state-machine Gotoh traceback
  • Restored cursor/selection applies before paint to stay in sync with sequence edits; the cursor hides after inactivity instead of clearing; deleting a selection parks the cursor at the deletion point; replace-paste selects the pasted range; pasted annotations reverse-complement when the pasted text is flipped
  • MCP save_file region-selector errors return an in-band ok:false rejection instead of a protocol error

Downloads

Platform Files Notes
macOS .dmg, .app.tar.gz Apple Silicon
Windows .msi, -setup.exe (NSIS)
Linux .flatpak amd64 + aarch64

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 01 Oct 02:42

Full Changelog: v0.4.0...v0.5.0

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 27 Sep 16:41

Feature release centered on a new BLAST alignment engine with an insertion-aware alignment view and chromatogram rendering, automatic re-alignment on sequence edits, a GC content track, and a dotplot self-comparison view.

New Features

  • BLAST alignment engine — a BLAST-derived engine (ported from GenePad) joins Smith-Waterman as a user-selectable alignment algorithm: multi-segment colinear HSPs align split or multi-hit reads in full, with affine-gap consolidation and a full-length fast path that guarantees the optimal solution
  • Insertion-aware alignment view — read insertions (including end junk) get their own slot columns, one cell per inserted base; inserted read bases are highlighted like mismatches, small insertions no longer litter the template row with dashes, and all tracks (GC content, primer occupancy, amplimer highlight, enzyme labels) drift-map around the slots
  • Automatic re-alignment — editing the template sequence re-aligns every stored alignment in the background (reads are compared in their original orientation so reverse-strand traces stay correct), and the editor shifts the old alignment model optimistically until the result arrives; the manual Re-align action is gone
  • GC content track — a per-base blue–white–red gradient band below the sequence (Features → Show GC Content), with a nonlinear color curve, configurable window size in Settings, circular wraparound, and clean breaks at alignment insertion slots
  • Dotplot — Diagrams → Examine Dotplot renders a k-mer canvas self-comparison of DNA/RNA sequences, coloring exact window matches green and inverted repeats purple (both can stack), with split counts and a legend
  • ORF labels — ORF features get numbered names and direction arrows

Improvements

  • GC content track and SnapGene history extracted into the plugin registry (can be disabled in Settings)
  • Chromatogram traces draw in read order and break at the alignment's own discontinuities (missing columns, segment jumps, circular wraps), so peaks always sit on their own base cells
  • Indels are left-aligned so equivalent placements no longer offset flanking matches; one insertion entry per template column
  • Multi-segment and cross-origin features now round-trip as proper GenBank join locations, and order() locations parse instead of collapsing to a point
  • Hovering a translated feature shows AA numbers for all overlapping translations

Bug Fixes

  • Clear the selection after deletion and select inserted bases after insertion
  • Full IUPAC mapping in the frontend complement tables
  • Report overlapping restriction sites in the enzyme scan, and wrap circular site coordinates in MCP output
  • Preserve full cross-origin primer sites in MCP export; report convert_sequence repair coordinates as 1-based
  • Honor the start-codon Met convention in translation diff and refresh; normalize custom codon table frequencies; compute the 3′ mismatch flag within the 3′ anchor only
  • Persist primers that have no binding sites on save
  • Cap SnapGene history decompression and sequence budgets against malicious files
  • Numerous alignment-view fixes: label placement past trailing insertion cells, mouse interaction in slot-widened columns, scrollbar sync by scroll ratio, scroll anchoring in template columns

Downloads

Platform Files Notes
macOS .dmg, .app.tar.gz Apple Silicon
Windows .msi, -setup.exe (NSIS)
Linux .flatpak amd64 + aarch64; aarch64 verified on Fedora

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 20 Sep 12:55

Feature release centered on enzyme supplier data and a new supplier detail dialog, SnapGene history snapshots, and an expanded embedded MCP toolset.

New Features

  • SnapGene history snapshots — .dna files expose their history tree via Edit → History; open any snapshot as a new in-memory project carrying that node's complete subtree history plus the features/primers as of that point, and keep opening nested snapshots inside it (history is view-only; Save As stays GenBank)
  • Enzyme supplier data & provider filter — imported NEB / BestEnzyme / Thermo provider metadata (buffer compatibility, temperature, methylation, methylation sensitivity); filter the enzyme set by provider in the nav menu, intersected with the Enzyme Set filter
  • Enzyme detail dialog — double-click an enzyme label (or a row in the Enzyme Database dialog) to open a detail dialog with the full recognition site, cut positions, overhang, star activity, and a variant switcher showing per-variant supplier data, with collapsible related-enzyme (isoschizomer / neoschizomer) lists
  • MCP convert_sequence — the old optimize_cds tool is replaced by a unified batch conversion tool: dna↔rna (T↔U, optional revComp), dna/rna→protein translation, protein→dna/rna reverse translation with codon optimization, and dna→dna codon optimization, with per-item error isolation

Improvements

  • SnapGene history dialog renders as a flat vertical timeline, and its entry moved into the Edit menu as History
  • Nav menu buttons show a caret affordance on hover
  • Supplier field values and enzyme data are fully in English, with star activity reformatted as buffer lists
  • Alignment chromatogram bands now cut cleanly at deletions, insertions, and circular-join wraps instead of bridging artifacts — matches/mismatches stay connected, reads render on the row containing the join wrap

Bug Fixes

  • Reject crafted SnapGene feature coordinates at parse and export instead of accepting malformed data
  • Show the user-entered name on the map for new sequences and mark new projects dirty
  • Ellipsize long plasmid names in map view to avoid overlap
  • Exported enzyme JSON goes to stdout instead of a hardcoded home path
  • Guard against a missing project when plasmid length is read

Downloads

Platform Files Notes
macOS .dmg, .app.tar.gz Apple Silicon
Windows .msi, -setup.exe (NSIS)
Linux .flatpak amd64 + aarch64; aarch64 verified on Fedora

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 13 Sep 08:08

Feature release centered on Sanger chromatogram (AB1) display, a redesigned primer-alignment view, and much richer read-alignment rendering.

New Features

  • AB1 chromatogram display — opening a .ab1 file now shows the Sanger trace alongside the sequence, and alignment reads with trace data can expand a chromatogram band under their lane; bands collapse behind a per-track label toggle
  • Reads align across large internal template deletions — a read spanning a big deletion in the template is now split-aligned onto both flanks instead of failing to place
  • Alignment gaps and insertions render as placeholders — large indels are drawn as compact dot-pair markers (with hover highlighting per insertion, group hover, and a right-margin label) instead of stretching the layout; an insertion popover lists the inserted bases
  • Primer alignment details redesigned — the primer-vs-template view now shows flanking context, position markers, base-level highlighting, and unaligned 5' tail overhangs
  • Linearize / Circularize toggle — DNA projects can switch topology from the Edit menu
  • Enzyme context menu — right-click an enzyme site for related-enzyme navigation; enzyme lists auto-scroll while dragging
  • Sidebar project tabs — long names scroll on hover, and tabs can be reordered with a long-press drag
  • Feature deletion shortcut — clicking a feature then pressing Backspace once deletes the feature, twice deletes the underlying sequence

Improvements

  • Tm now matches SnapGene — melting temperatures use the SantaLucia & Hicks (2004) initiation parameters
  • Hidden alignment tracks persist per file — tracks you hide stay hidden across reloads
  • Nav bar interactions — left-click runs the default action, right-click opens the menu
  • Overlapping feature labels — hovering a feature raises its label above the crowd
  • Map watermark simplified — feature labels are hidden in the watermark, keeping just the plasmid name and size
  • Dialogs — Esc closes the search bar and layered dialogs; the feature dialog requires resolving a pending location edit before closing; the primer dialog defaults to a wider minimum width
  • Save dialog prefills the name entered for unsaved projects, and duplicate feature names are allowed when creating features
  • Homebrew tap updates automatically on each release

Bug Fixes

  • Features with identical ranges now all render instead of being deduped
  • Clicking blank canvas areas clears the selection
  • Primer alignment windows extend past reverse-primer footprints and wrap correctly at the circular origin
  • Newlines are stripped from primer sequences parsed from wrapped GenBank notes

Downloads

Platform Files Notes
macOS .dmg, .app.tar.gz Apple Silicon
Windows .msi, -setup.exe (NSIS)
Linux .flatpak amd64 + aarch64; aarch64 verified on Fedora

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 04 Sep 12:48

Feature release adding multi-record FASTA splitting and a much faster sequence alignment engine.

New Features

  • Multi-record FASTA files can be split on open — opening a FASTA file with more than one sequence now lists the records and offers to open each as its own project, or just the first one
  • RNA fold watermark highlights the current selection — selected bases are marked directly on the secondary-structure overlay
  • Plasmid map moves to the editor nav bar and becomes a plugin — the Map entry now lives in the bottom nav menu of each project (where it belongs), and can be turned off entirely in Settings → Plugins
  • Editor background picker — right-click the editor canvas and choose Background ▸ None / Map / Folding to show a dimmed plasmid map or RNA fold behind the sequence; the choice is remembered per molecule type (DNA / RNA / protein) and applies across all files of that type

Improvements

  • Sidebar fades out scrolled-off projects — when the file list overflows, the hidden edge now fades away instead of cutting items off mid-row

  • Sequence alignment is dramatically faster on long reads — alignment now uses seeded, banded Smith-Waterman instead of a full-matrix search; aligning a ~15 kb read against a ~15 kb plasmid drops from several seconds to well under a second, and results on repetitive templates are now deterministic

  • Sidebar keeps its top and bottom buttons fixed — Open/New and the bottom function buttons no longer scroll away with a long file list; only the recent/opened file lists scroll

  • Windows window controls are more legible — the minimize/maximize/close glyphs are larger and higher contrast

  • Enzyme set selection truly persists across restarts (the stored value was saved but never parsed back)

Downloads

Platform Files Notes
macOS .dmg, .app.tar.gz Apple Silicon
Windows .msi, -setup.exe (NSIS)
Linux .flatpak amd64 + aarch64; aarch64 verified on Fedora

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 03 Sep 04:02

Patch release fixing a startup crash on Linux and improving packaging.

Fixes

  • Flatpak / minimal Linux sessions no longer crash at startup — the system tray library (libayatana-appindicator3) is absent in the GNOME Flatpak runtime, and the tray crate panicked instead of failing gracefully. The app now probes for the library first and simply runs without a tray icon when it is missing; closing the main window then quits normally instead of hiding it with no way back

Improvements

  • Enzyme filter selection persists across restarts instead of resetting to "unique + twice"
  • macOS dmg now includes a bilingual README explaining how to allow the unsigned app through Gatekeeper

Downloads

Platform Files Notes
macOS .dmg, .app.tar.gz Apple Silicon
Windows .msi, -setup.exe (NSIS)
Linux .flatpak amd64 + aarch64; aarch64 verified on Fedora

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 01 Sep 13:24

Patch release with fixes for lowercase-sequence handling and editor rendering.

Fixes

  • Lowercase bases handled consistently — GenBank files that keep lowercase sequence no longer break downstream features: restriction-site matching, peptide search (stop-codon re-check), primer alignment seeding, and the frontend complement operation all treat lowercase bases correctly
  • CDS amino-acid numbering hover — the tooltip now triggers across the whole base range instead of only on part of it
  • Alignment view spacing — widened the gap between alignment lanes and feature tracks so overlapping reads no longer crowd the feature annotations

Packaging

  • Linux builds are now published as Flatpak only (amd64 + aarch64); deb/AppImage are no longer produced

Downloads

Platform Files Notes
macOS .dmg, .app.tar.gz Apple Silicon
Windows .msi, -setup.exe (NSIS)
Linux .flatpak amd64 + aarch64, unverified