npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

jbrowse-plugin-protein3d

v0.13.2

Published

This is a 3-D protein structure viewer for JBrowse 2

Readme

jbrowse-plugin-protein3d

This is a 3-D protein structure viewer for JBrowse 2

The major workflow enabled by this is

  • Right click gene of interest -> launch 3-D protein viewer with linked mouseover between genome and structure

It has features to automatically look up a protein structure of interest using the UniProt ID mapping API to connect to AlphaFoldDB, lists the experimental PDB entries SIFTS maps to that UniProt entry, and can also use Foldseek to look up related structures

Coordinate-mapping harness

A standalone diagnostic page that loads real PDB / AlphaFold structures through the plugin's actual mapping code and surfaces cases it mishandles (multi-chain complexes, partial/repeat structures, AlphaFold fragments):

https://gmod.org/jbrowse-plugin-protein3d/

Source and details in harness/.

Screenshot

Example at https://jbrowse.org/code/jb2/latest/?config=%2Fucsc%2Fhg38%2Fconfig.json&session=share-aZOIjR_qs4&password=NT4sa

Demos

Structures that are easy to map wrong, each one link away: a peptide bound to a larger partner, a protein bound to DNA, a receptor with another protein fused into it, a phosphorylated residue, and a mitochondrial protein.

Publication

If you find this tool useful please cite our work

Diesh, C., Stevens, G., Bridge, C., Hogue, G., Buels, R., Cain, S., Stein, L., & Holmes, I. (2026). Proteins in the Genome Browser: Integration of Phylogenies, Alignments, and Structures With Nucleotide-level Evidence in JBrowse 2. Journal of Molecular Biology, 169645. https://doi.org/10.1016/j.jmb.2026.169645

See also https://github.com/GMOD/proteinbrowser for overview

Availability

This plugin is installed by default on https://genomes.jbrowse.org so you can use it on any species there

Programmatic usage

See DEVELOPERS.md

How it works

Notes on the parts that are easy to get subtly wrong, written for someone extending the plugin or checking what a number on screen means:

  • Genome to structure alignment: why the plugin aligns the transcript's translation to the structure on the fly, the precedent for that in SIFTS and G2S, how it picks the chain and isoform, and what sequence alignment cannot decide.
  • Residue numbering: how a paper's R248 becomes position 154 in the file, label_seq_id 155 for Mol*, and the codon on chr17, and how a session spec names a residue the literature's way.

Publishing

just push a new tag using e.g.

pnpm version minor