wolfsonliu
dsh-file-explorer-preview-sequence
DSH Web file-explorer preview plugin: renders FASTA / GenBank / JBEI / SnapGene / SBOL sequences with the SeqViz viewer | DSH Web 文件浏览器预览插件:用 SeqViz 查看器渲染 FASTA / GenBank / JBEI / SnapGene / SBOL 序列文件
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 15, 2026
- Updated
- Aug 15, 2026
Introduction
dsh-file-explorer-preview-sequence
中文 | English
A DSH Web plugin that adds a SeqViz sequence viewer to dsh-file-explorer, overriding its plain-text previews for FASTA, GenBank, JBEI, SnapGene, and SBOL files.
Select a .gb / .fasta (or any supported format below) in the file explorer and the preview panel renders an interactive sequence viewer instead of raw text.
Screenshots
| Dark theme | Light theme |
|---|---|
![]() | ![]() |
Features
- Interactive viewer built on
seqviz(<SeqViz>), with parsing byseqparse. - Topologies: circular / linear / both / both-flip.
- Feature annotations with colors, search with highlight, enzyme cut sites, complement & index toggles, and linear zoom.
- Status bar with the format badge, name, sequence type, and length.
- Localized toolbar/status copy (中文 / English).
- Dark/light aware: follows DSH's
data-ds-dark-theme.
Supported formats
| Extension | Format |
|---|---|
fasta fa fas fna faa ffn | FASTA |
gb gbk genbank gp | GenBank / GenPept |
dna | SnapGene |
seq | JBEI SEQ |
sbol xml | SBOL v1/v2 |
Install
From the Git repository
dsh plugin --profile web add github:wolfsonliu/dsh-file-explorer-preview-sequence
dsh web
From source
git clone https://github.com/wolfsonliu/dsh-file-explorer-preview-sequence
cd dsh-file-explorer-preview-sequence
npm install
npm run build
dsh plugin --profile web add .
dsh web
Dependencies
This plugin requires @dsh-external/dsh-file-explorer — it injects the fileExplorer cordis service (registerPreview / writeFile / readRawFile). Install and enable dsh-file-explorer before this plugin:
# install the core from git
dsh plugin --profile web add github:wolfsonliu/dsh-file-explorer
# or, from source
git clone https://github.com/wolfsonliu/dsh-file-explorer
cd dsh-file-explorer
npm install && npm run build
dsh plugin --profile web add .
For local development, this repo's
devDependenciesresolves@dsh-external/dsh-file-explorer's./clienttype definitions. Point it at your checkout or your registry's published package beforenpm install.
For files ≤ 2 MiB the plugin parses the text preview content directly. SnapGene .dna (binary) and files larger than 2 MiB require dsh-file-explorer to expose readRawFile (a small core change described in dsh-file-explorer-preview-molstar). Until that change is applied, the plugin degrades gracefully: text formats ≤ 2 MiB still preview, .dna and larger files show the core's "binary" / "too large" status.
Limitations
- Read-only preview (no editing).
- SnapGene
.dnaand > 2 MiB files preview only after the corereadRawFilechange lands (see Dependencies). .xmland.seqare ambiguous extensions; files in those extensions that aren't SBOL / JBEI fall back to a plain-text view.
Development
npm run check # tsc type check
npm test # vitest unit tests
npm run build # tsc + tsdown (single-file lib/client.js bundling seqviz + seqparse)
The real SeqViz canvas cannot run under jsdom; verify it with dsh web and a sequence file in examples/.
After
npm run build, hard-refresh the browser (Ctrl/Cmd+Shift+R):dsh webmay keep serving a cached plugin bundle, so a soft reload can leave your latest build unused.

