Omnigraph
Graph engine for context assembly. Object-storage native. Agents work with graph data the way engineers work with code: branched, typed, reviewed, merged, audited, and governed.
Interactive multiple sequence alignment viewer with phylogenetic tree, protein domains, and many color schemes. React, HTML, and R.
DataTypeScript · JavaScriptGitHub @GMODOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
A multiple sequence alignment viewer
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
An interactive multiple sequence alignment viewer.
• Tree and alignment rendered together, tiled to stay fast on large inputs
• Parses FASTA, Stockholm, Clustal, A3M, and EMF alignments and Newick/EMF trees
• Protein domain overlays from GFF3, such as InterProScan output (generate them
with the CLI)
• Protein and nucleotide color schemes, including per-column dynamic schemes
• Conservation, property-conservation and sequence-logo tracks over the columns
• React component, UMD-in-HTML, and R htmlwidget entry points
• Shareable view state and SVG exportRead the full README ↗An interactive multiple sequence alignment viewer.
Jump to what you need:
| You want to… | Start here |
|---|---|
| Use the viewer: load data, explore, export an image | User guide · live app · docs site |
| Build the files to open: sequences to alignment, tree, annotations | Tutorials · live |
| Embed the React component in your own app | Usage & embedding guide · live code examples · model API reference |
| Use it from R (ape, Biostrings, ggtree, Shiny, ggplot2) | ggmsaview, in its own repo |
| Annotate protein domains or exons, or render a figure headlessly | CLI README: interpro, interproscan, genestructure, export-svg |
| Contribute / hack on the code | Development |
import { MSAViewer } from 'react-msaview'
export default function App() {
// backticks (template literal) so the \n become real newlines
return (
<MSAViewer
msa={`>human\nMKAANSE\n>mouse\nMKA-NSE`}
tree="(human:0.1,mouse:0.2);"
colorScheme="clustal"
/>
)
}
USAGE.md has the install line, every prop, the model API and the UMD bundle. The live examples have runnable snippets.
remotes::install_github("GMOD/ggmsaview")
library(ggmsaview)
msaview(msa = "alignment.fasta", tree = "tree.nwk", color_scheme = "clustal")
ggmsaview also draws the viewer as a ggplot2 figure, and its README covers ape, Biostrings, ggtree, treeio and Shiny.
The viewer draws domain annotations, such as the GFF the CLI writes, as labelled boxes on the alignment:
| Package | Description |
|---|---|
| packages/lib | Main react-msaview React component |
| website | Docs site (deployed at gmod.org/JBrowseMSA) |
| packages/app | Demo application (deployed at gmod.org/JBrowseMSA/demo) |
| packages/examples | Live usage examples (deployed at gmod.org/JBrowseMSA/examples) |
| packages/cli | Domain/exon GFFs and headless SVG export |
| packages/msa-parsers | MSA file format parsers |
| packages/svgcanvas | SVG canvas rendering (ESM fork of svgcanvas) |
git clone https://github.com/GMOD/JBrowseMSA
cd JBrowseMSA
pnpm install
| Command | What it does |
|---|---|
pnpm dev | Run the demo app with hot reload (edits in packages/lib/src/) |
pnpm build | Build all packages |
pnpm test | Run the test suite |
pnpm figures | Regenerate the README figures (headless SVG, packages/lib/scripts) |
pnpm screenshots | Regenerate the user-guide app screenshots (diff-gated; only changed images rewrite) |
pnpm lint / format / typecheck | Lint (oxlint), format (oxfmt, plus Prettier for .astro), typecheck all packages |
The workspace is pnpm-only. pnpm-lock.yaml at the root is the single
lockfile, and a preinstall guard
(scripts/only-pnpm.mjs) stops an accidental
npm install or yarn from producing a second, unvetted dependency tree. Get
pnpm with corepack enable.
CLAUDE.md has the architecture notes; the core state model is
packages/lib/src/model.ts (MobX-state-tree), and observer-wrapped components
re-render when observed model properties change.
pnpm build:pages builds both into pages-dist/
(docs at the root, app under /demo); the
Deploy docs site workflow deploys it via
GitHub's native Pages action on every push to main. Trigger it by hand with
workflow_dispatch for an out-of-band deploy.packages/examples, so the same push deploys it. The package has
no standalone site; jbrowse.org/storybook/msa no longer hosts a copy.Run scripts/release.js to create and push a new git tag. We use npm trusted
publishing, so pushing a tag to GitHub launches the npm release automatically.
scripts/release.js also writes the release's CHANGELOG section
from its commits, with git-cliff and the groups in
cliff.toml. We automated the changelog after the hand-written one
stopped at v3.1.3 while the packages reached 6.5.0.
Builds on abrowse and phylo-react.