Interactive tool
Protein explorer
Search for a protein and see its function, an experimental structure beside the AlphaFold prediction with its confidence, sequence tracks for domains, sites and variants, and the drugs that act on it.
Loading the protein explorer…
What it shows
Search UniProt by gene, protein name or accession. For the protein you pick, the page shows what UniProt records about its function and location, an experimental structure from the PDB beside the AlphaFold DB prediction, sequence tracks that line up domains, sites, modifications, structural coverage, prediction confidence and variants, and the drugs and clinical candidates that Open Targets lists against it.
Clicking a residue, domain or site on the tracks highlights it in both 3D views. The experimental view goes through the SIFTS residue mapping, so the same UniProt residue is found in the PDB chain even when the file numbers it differently, and the page says when a residue is not resolved in that entry.
How it works
Everything is fetched live from public APIs in your browser; nothing is stored on a server. UniProt REST supplies search and the entry; a single-word search also asks for an exact human gene-symbol match, because UniProt's own ranking can put TP53TG5 above TP53. PDBe's best_structures API lists every PDB chain mapped to the protein, but its coverage figures describe the construct, not what was modelled, so PDBe's UniPDB endpoint is used to find the residues each entry actually resolves. The default structure is the entry that resolves the most residues, weighted by resolution (full weight to 2 Å, half at 4 Å, less for coarser maps and NMR); the leading candidates are checked against SIFTS sequence identity, and one at 95% identity or less counts for half, so an entry of another isoform is rarely the default; its title is shown so mutants and complexes are visible. The chosen chain is also compared with the UniProt sequence residue by residue, and stretches with a different sequence, or residues the chain has no counterpart for, are not counted as resolved.
AlphaFold DB's prediction API returns the model, isoform models and sometimes models from other providers; the page takes the entry for the exact accession and uses the file URLs the API gives, so a new database version needs no code change. Models are built for the UniProt sequence of their release, so the model's sequence is lined up with today's UniProt sequence before any per-residue value is drawn, and the page says when they differ. pLDDT colours use AlphaFold DB's cut-offs (90, 70 and 50; a score exactly on a cut-off counts in the higher band), taken from each residue's score rather than from the file's category letters, which differ between model providers. pLDDT is a per-residue estimate of local confidence, and low-confidence stretches are often disordered; it says nothing about how domains sit relative to each other, which is what the predicted aligned error (PAE) measures. The page shows AlphaFold DB's PAE image on request but does not colour the 3D view by it.
The variants track starts with UniProt's curated natural variants. The EBI Proteins API's fuller list, with ClinVar and other clinical classifications where they exist, can be added on request, because that response is tens of megabytes for well-studied proteins; records known only from COSMIC, and Ensembl copies of them, are left out, because COSMIC needs a paid licence for use on commercial websites. Drugs come from the Open Targets Platform GraphQL API through the Ensembl gene id in the UniProt entry. Approval is read from each drug's own highest stage and withdrawals from Open Targets' drug warnings: a drug counts as withdrawn from the market only when the warning is worldwide or covers both the United States and the European Union, and narrower withdrawals are listed with their countries. A drug with a narrower withdrawal that names the United States, the European Union or the United Kingdom, and no approval record from a regulator or drug label in Open Targets, is shown as withdrawn in those countries rather than approved, and so is a drug withdrawn anywhere that has no approval record at all. An approval stage that rests only on a classification or naming list (a WHO ATC code, a TTD entry, or a USAN or INN name) is marked as such; salt forms are grouped under one ingredient.
How it was built
A Next.js page with one client component tree. Mol* 5.11 (the prebuilt viewer, MIT licence) loads from the site's own vendor folder only once a protein is chosen and a viewer is near the screen, and each viewer is driven by a MolViewSpec scene built from the fetched data: pLDDT bands become four colour selections, and the chosen PDB chain, other copies of the protein, other molecules and ligands each get a colour. The two viewers are created once and reused for every entry and protein, because each new Mol* viewer costs a WebGL context and memory. The page downloads each structure file itself, with a time limit and a second host, and gives Mol* a local copy, so a stalled file host ends in an error with a retry rather than a spinner. Entries over 150,000 atoms load just the chosen chain from the PDBe ModelServer until you ask for the whole entry.
The tracks are hand-written SVG with their own zoom, scrolling inside the panel and a keyboard cursor. Parsing, ranking, residue mapping, drug grouping and scene building are plain TypeScript modules with unit tests on Node's built-in test runner. Field names for every API were checked against live responses in September 2026, including the Open Targets 26.09 schema, where drug data moved from target.knownDrugs to target.drugAndClinicalCandidates.
Limits
- Not medical advice. Variant classifications are what UniProt, ClinVar or Ensembl report, not an assessment of anyone's variant. AlphaMissense scores are predictions that have not been validated for clinical use and can disagree with known disease variants.
- The default PDB entry is picked by a simple rule (residues resolved, weighted by resolution). It may be a truncated construct, carry engineered mutations or lack the ligand you care about, so check its title and use the list to choose another.
- The experimental view shows the deposited model, not necessarily the biological assembly. Entries over 150,000 atoms load only the chosen chain until you ask for the whole entry.
- The predicted model is a single-chain prediction of the full UniProt sequence, signal peptides and propeptides included. It has no ligands, partners or modifications, low-pLDDT regions should not be read as real structure, and AlphaFold has not been validated for predicting the effect of mutations. PAE is shown only as AlphaFold DB's image.
- AlphaFold DB covers sequences of 16 to 2,700 residues for reference proteomes and Swiss-Prot, so very long proteins such as titin have no model here. Where UniProt has changed a sequence since AlphaFold DB built its model, the model is lined up with the current sequence without gaps; if that is not possible, its per-residue values are not drawn. Isoforms are not supported: an isoform accession opens the canonical entry, with a note naming the isoform and links to it.
- Drug data covers human targets only and lists molecules whose curated mechanism of action names the target. Stages are the highest Open Targets reports for any indication and region, not an approval for every indication shown, and not a forecast for any trial. Withdrawals come from Open Targets' drug warnings. One that is not worldwide and does not cover both the United States and the European Union is shown with its countries and does not by itself move a drug with a regulator's approval record out of Approved; other withdrawal reports are shown as reports for one product or indication.
- All data is live. If a provider is slow or down, that panel says so and offers a retry; the rest of the page still works.
Next step
Need a tool like this built?
Want to talk about a role, a project or any of the work here? Get in touch and I will reply within a working day.
Available from September 2026 for full-time roles and selected freelance projects.