blast-visualizer — Interactive BLAST Viewer

Run NCBI BLAST and visualize as interactive alignment map (SVG) + hit table + pairwise detail + 10 external deep links (Kablammo alternative, ko/en/ja).

Load sample:

Tool Guide

Definition

blast-visualizer is a free BLAST result visualizer that wraps the NCBI BLAST (Basic Local Alignment Search Tool) URL API (https://blast.ncbi.nlm.nih.gov/Blast.cgi) behind four Next.js 15 Route Handlers (submit / status / cancel / result), translating the venerable NCBI 1990s UI into a modern interactive SVG alignment map, hit table, and pairwise Detail Drawer. Supports 6 PROGRAMs (blastn / megablast / blastp / blastx / tblastn / tblastx) × 6 DATABASEs (nt / nr / refseq_rna / swissprot / 16S_ribosomal_RNA / pdb) with a ko/en/ja UI. BlastOutput2 JSON2 payloads are cached at the Vercel Edge with 24h ISR; the JSON2 ZIP archive is unpacked by an in-house PKZIP parser (node:zlib.inflateRawSync, zero external libraries).

Purpose

(1) Lower learning curve for NCBI BLAST 1990s UI + Korean/Japanese unified entry point (2) Fill the gap left by Kablammo (English-only) and BLAST Ribbon (English-only, steep curve) with an interactive alignment map in ko/en/ja (3) Single workflow for unknown-sequence ID, phylogenetic classification, homology search, and E-value interpretation (4) Academic-standard terminology mapped across 15 terms (HSP, E-value, bit score, identity %, coverage %, etc.) (5) Zero external npm libraries (Chart.js / D3.js / adm-zip replaced by in-house SVG + PKZIP) — free + fast via Vercel Edge ISR (6) Automated NCBI policy compliance — server-side 10s self-throttle + 60s/RID floor + tool/email identifiers

How to Use

① Select PROGRAM — `blastn` (DNA-DNA) / `megablast` (high-sensitivity) / `blastp` (Protein-Protein) / `blastx` (translated DNA → Protein) / `tblastn` (Protein → translated DNA) / `tblastx` (both translated) ② Select DATABASE — `nt` / `nr` / `refseq_rna` / `swissprot` / `pdb` / `16S_ribosomal_RNA`, etc. (auto-filtered per PROGRAM) ③ Paste FASTA or raw sequence (header auto-parsed + IUPAC validated) ④ Click "Run BLAST" — Route Handler PUTs to NCBI with tool/email identifiers and a 10s self-throttle ⑤ Receive RID + RTOE → queue polling starts (60s floor + ±5s jitter) — Cycle N counter + ETA mm:ss ⑥ On READY, the result is fetched, ZIP is unpacked in-house, and JSON2 is parsed ⑦ Explore the Alignment Map — toggle 3 color modes (E-value default = Kablammo standard / bit score / identity) + HSP hover tooltip + click → Detail Drawer (pairwise + 10 external links) ⑧ Filter Bar (E-value cutoff / identity slider / TaxID filter) + Sort (bit-score desc default / E-value asc / identity desc / coverage desc) ⑨ Export (SVG / FASTA / TSV outfmt 6 / JSON) ⑩ URL `?rid=` auto-updates + localStorage stores the 5 most recent RIDs — refresh resumes polling automatically

Examples

Example 1) TP53 cDNA (NM_000546.6, ~1,183 nt, blastn × nt) — human tumor suppressor → 1st hit = NM_000546 (100%), diverse primate orthologs → General case + ortholog color gradient Example 2) Lactobacillus 16S rRNA (~1,500 nt, blastn × 16S_ribosomal_RNA) — bacterial ID gold standard → Many Lactobacillus species hits + rich taxonomic facet → Microbial ID + TaxID filter + subtle identity% variation Example 3) GFP (Aequorea victoria, ~720 nt, blastn × nt) — synthetic biology benchmark → A. victoria + EGFP variants (1st 100%) + plasmid vector match Example 4) SARS-CoV-2 spike (protein, ~1,273 aa, blastp × nr) — many coronavirus spike hits → blastp + BLOSUM62 + long sequence + variant alignment performance Example 5) random 100nt (blastn × nt) — intentional 0-hits edge case → E-value threshold rejection + zero_hits UX + ToolGuide adjustment suggestions