Website: https://www.saumyakmukherjee.com/beer
BEER is a desktop application for integrated biophysical analysis of protein sequences. It accepts a sequence (pasted, imported as FASTA/PDB, or fetched from UniProt/RCSB), runs 19 analysis modules in one click, and gives you interactive publication-quality graphs, a 3D structure viewer, and exportable reports — all from a single GUI.
I built BEER because I wanted a single tool that handles everything from basic physicochemical properties to disorder prediction, aggregation hotspots, RNA-binding propensity, and phase separation metrics, without jumping between half a dozen web servers.
If you use BEER in your research, please cite: Mukherjee, S. arXiv:2504.20561. DOI: https://doi.org/10.48550/arXiv.2504.20561
Version 1.0 was a single monolithic script with a basic GUI. v2.0 is a full rewrite:
- Proper Python package (
beer/) — modular, installable viapip - ESM2 neural predictions for disorder — pre-trained heads bundled; optional ESM2 probe for β-aggregation (settings-controlled)
- 3D structure viewer with multiple representations, colour modes, colour bar, spin, and snapshot export
- 37 graphs across 11 categories (up from ~12), including Ramachandran, contact network, pLDDT profile, domain architecture
- New analysis modules: RNA binding (catRAPID), SCD/κ/Ω, LARKS, tandem repeats, TM topology (TMHMM 2.0 local), coiled coil (COILS), ELM linear motifs, phosphorylation PWMs (NetPhos-style), catGRANULE phase-separation, SignalP D-score
- New utility tabs: BLAST, Multichain, Compare, Truncation Series, MSA Conservation, Complex Mass
- Protein summary bar: fetches name, gene, organism, and function from UniProt or RCSB automatically after a fetch
- Session-only history: the last 10 analysed sequences are available in a dropdown during the session and cleared when you close the app
- Official logo and About dialog — logo displayed in the taskbar/Dock and accessible via the Help tab
- Persistent settings, drag-and-drop FASTA, session save/load, keyboard shortcuts overlay, right-click figure menu (copy, save PNG/SVG/PDF, export underlying data as CSV/JSON)
- Structure export in PDB, mmCIF, GRO, XYZ, and FASTA formats
- Removed unreliable metrics (Instability Index, LLPS composite score, Chou-Fasman)
Requirements: Python 3.12 · macOS, Windows, or Linux · ~200 MB disk space
conda create -n beer python=3.12 -y
conda activate beer
git clone https://github.com/chemgame/BEER.git
cd BEER
pip install .Install PyTorch and ESM2 neural prediction models (CPU build):
pip install "torch>=2.0" --index-url https://download.pytorch.org/whl/cpu
pip install fair-esm scipyLinux only — install Qt platform libraries and set the library path:
conda install -n beer -c conda-forge xcb-util-cursor xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm libxkbcommon libnss libdrm libxcomposite libxdamage libxrandr libgbm -ymkdir -p $CONDA_PREFIX/etc/conda/activate.d
echo 'export LD_LIBRARY_PATH=$CONDA_PREFIX/lib:$LD_LIBRARY_PATH' > $CONDA_PREFIX/etc/conda/activate.d/beer_xcb.shconda activate beer
beer- Paste an amino-acid sequence (or drag-and-drop a
.fastafile onto the window) - Click Analyze or press
Ctrl+Enter - Browse the 19 report sections in the left panel of the Analysis tab
- Go to the Graphs tab and click any graph name
- Click Export Analysis to save the full report (CSV, JSON, PDF, or DAT)
Internet is only needed for external fetches (UniProt, AlphaFold, Pfam, ELM, DisProt, PhaSepDB, BLAST). All local analysis runs offline.
| Method | How |
|---|---|
| Paste sequence | Type or paste a bare amino-acid string or FASTA block and click Analyze |
| Import FASTA | Click Import FASTA → select a .fa / .fasta file; multi-sequence files load all chains into the Multichain tab |
| Import PDB | Click Import PDB → select a .pdb file; all chains available in the Chain dropdown |
| Fetch UniProt | Type a UniProt accession (e.g. P04637) → click Fetch; unlocks AlphaFold, Pfam, DisProt, PhaSepDB buttons and shows a protein summary |
| Fetch PDB ID | Type a 4-character RCSB code (e.g. 1UBQ) → click Fetch; loads structure and all chains automatically |
| Drag & Drop | Drag a .fasta file directly onto the BEER window |
| History | A dropdown next to the toolbar lists the last 10 sequences analysed in the current session; selecting one re-runs the full analysis immediately. History is cleared when you close the app. |
After running analysis, the left panel lists 19 report sections. Click any section name to display it.
When you fetch a protein from UniProt or RCSB, a compact protein info bar appears above the report panel, showing the protein name, gene, organism, and a one-line functional description.
| Button | Action |
|---|---|
| Analyze | Run analysis (Ctrl+Enter) |
| Export Analysis | CSV / JSON / PDF / DAT (Ctrl+E) |
| Mutate… | Point-mutation dialog |
| Save / Load Session | Save or restore a .beer JSON session file |
| Figure Composer | Assemble a custom multi-panel publication figure |
| Fetch | Download sequence from UniProt or RCSB PDB |
| Fetch AlphaFold | Download predicted structure from EBI AlphaFold |
| Fetch Pfam / ELM | Domain and linear motif annotations |
| DisProt / PhaSepDB | Disorder and phase-separation database annotations |
| MobiDB | Consensus disorder annotations from MobiDB (fraction disordered, predictor count, disordered regions) |
| Variants | Natural variants and mutagenesis data from UniProt |
| IntAct | Curated binary interactions from the IntAct molecular interaction database (EBI); shows partner, detection method, MI-score, and PubMed link |
Residues in the sequence viewer are colour-coded by type. Use the Search / Highlight box to find motifs or regex patterns. Below the viewer: Copy Sequence (whole or range) and Clear All (resets everything).
| Section | Contents |
|---|---|
| Properties | MW, pI, GRAVY, aromaticity, aliphatic index, extinction coefficient |
| Composition | AA counts and frequencies, sortable by name / frequency / hydrophobicity |
| Hydrophobicity | Kyte-Doolittle statistics, hydrophobic and hydrophilic fractions |
| Charge | FCR, NCPR, κ, Ω, net charge, charge asymmetry |
| Aromatic & π | Aromatic fraction, cation–π and π–π pair counts |
| Low Complexity | Shannon entropy, prion-like score, LC fraction, PLAAC score (Lancaster et al. 2014), PolyX stretches |
| Disorder | ESM2 logistic probe (DisProt 2024, AUC 0.83); falls back to metapredict (Emenecker et al. 2021) or classical propensity scale |
| Aggregation | ZYGGREGATOR hotspots (Tartaglia & Vendruscolo 2008); CamSol solubility; optional ESM2 probe (Settings) |
| Signal Peptide | Von Heijne (1986) n/h/c model; SignalP-style D-score P(SP) discriminant; AXA cleavage motif; GPI anchor (Eisenhaber et al. 1999). Optional deep-learning upgrade via SignalP 6.0 button (BioLib, requires pybiolib + login) |
| RNA Binding | catRAPID-style composite score ω̄ (Bellucci et al. 2011 Nat Methods); per-residue catRAPID profile; RGG/RRM/KH/SR/DEAD-box motif scan |
| Amphipathic Helices | Regions with μH ≥ 0.35 (Eisenberg 1984); hydrophobic moment profile for α-helix (δ=100°) and β-strand (δ=160°) |
| SCD / κ / Ω | Sequence charge decoration profile |
| LARKS | Low-complexity Aromatic-Rich Kinked Segments (Hughes et al. 2018) |
| Tandem Repeats | Direct, tandem, and compositional repeats |
| TM Topology | TMHMM 2.0 (Krogh et al. 2001) bundled locally — 395-state profile HMM, NumPy Viterbi, no internet needed; KD window fallback. Optional cloud upgrade via DeepTMHMM button (BioLib) |
| Coiled Coil | Full COILS algorithm (Lupas et al. 1991 Science 252:1162): MTIDK 20×7 position-weight matrix, all 7 heptad registers swept, log-odds converted to P(CC) via calibrated sigmoid |
| Linear Motifs | Regex scan: NLS, NES, PxxP, 14-3-3, KFERQ, KDEL, SxIP, NxS/T, … |
| Proteolytic Map | Predicted cleavage sites for 9 enzymes (Trypsin, Chymotrypsin, Lys-C, Asp-N, Glu-C, CNBr, Arg-C); peptide masses in Da |
| Phosphorylation | NetPhos-style PWM scan (Blom et al. 1999) for PKA (R[R/K]x[S/T]), PKC ([S/T]x[R/K]), CK2 ([S/T]xxE/D), and Src/Tyr kinase (YxxΦ) sites |
| Sticker & Spacer | Sticker count/spacing, catGRANULE score (Bolognesi et al. 2016 Cell Reports 14:2535): linear combination of catRAPID, disorder, and inverse hydrophobicity; score > 0 predicts condensate formation |
| Comparison | Side-by-side disorder / hydrophobicity / aggregation overlays |
Navigate using the category tree on the left. The matplotlib toolbar (zoom, pan, home) appears above each figure. Click the ⓘ button (bottom-right of each graph) for a detailed description, equations, and references. Right-click any graph for three options: copy to clipboard, save figure (PNG/SVG/PDF), or Export Graph Data… — writes the underlying data (residue scores, domain lists, site tables, etc.) to a CSV or JSON file so you can re-plot or analyse it with external tools. Save All Graphs exports every generated graph to a directory.
| Category | Graphs |
|---|---|
| Composition | AA Composition (Bar), AA Composition (Pie) |
| Profiles | Hydrophobicity, Local Charge, Local Complexity, Disorder, Linear Sequence Map, Coiled-Coil |
| Charge & π | Isoelectric Focus, Charge Decoration (Das-Pappu), Cation–π Map |
| Structure & Folding | Bead Model (Hydrophobicity), Bead Model (Charge), Sticker Map, Helical Wheel, TM Topology |
| Phase Sep / IDP | Uversky Phase Plot, Single-Residue Perturbation Map, SCD Profile |
| Aggregation | β-Aggregation Profile, Solubility Profile, Hydrophobic Moment |
| Sequence Analysis | Annotation Track, Cleavage Map, PLAAC Profile |
| Post-Translational & Binding | RNA-Binding Profile |
| Evolutionary & Comparative | Truncation Series, MSA Conservation, MSA Covariance, Complex Mass |
| AlphaFold / Structural* | pLDDT Profile, Distance Map, Domain Architecture, Ramachandran Plot, Residue Contact Network |
*Structural graphs require a loaded structure (from AlphaFold fetch or PDB import).
Sequence Analysis graphs:
| Graph | Description |
|---|---|
| Annotation Track | Unified five-track view: disorder, hydrophobicity, aggregation, feature annotations (TM helices, signal peptide, LARKS), and a sequence ruler — all aligned on the same x-axis |
| Cleavage Map | Predicted proteolytic cut sites for 9 enzymes displayed as coloured ticks on horizontal tracks; includes a trypsin peptide mass summary |
| PLAAC Profile | Per-residue prion-like amino acid composition score (Lancaster et al. 2014), with prion-like regions highlighted |
Interactive 3D viewer powered by 3Dmol.js, embedded via Qt WebEngine (bundled with PySide6). The tab has a left control panel and a 3D canvas. The default background is white.
| Control | Options |
|---|---|
| Representation | Cartoon (default), Stick, Sphere, Line, Cross, Trace, Surface |
| Color mode | pLDDT/B-factor, Residue type, Chain, Charge, Hydrophobicity, Mass, Secondary Structure, Spectrum (N→C) |
| Color scheme | Mode-dependent: Red-White-Blue, Rainbow, Shapely, Cyan-White-Orange, JMol, PyMOL, Spectrum, etc. |
| Color bar | Toggleable gradient/categorical legend overlay (bottom-right) |
| Background | White (default), Black, Grey presets or custom color picker |
| Spin | Continuous auto-rotation on X / Y / Z axis |
| Reset View | Restores default representation, colour mode, white background, and camera position |
| Snapshot PNG | Saves current view as PNG |
Export Structure / Sequence saves in PDB, mmCIF, GRO, XYZ, or FASTA format.
| Tab | What it does |
|---|---|
| BLAST | Submits current sequence to NCBI blastp (1–3 min); click Load on any hit to re-run analysis on that sequence |
| Multichain | Auto-populated from multi-FASTA or multi-chain PDB; shows MW, charge, composition per chain; double-click a row to load it |
| Compare | Side-by-side property table and profile overlays for two sequences |
| Truncation Series | Computes properties across progressive N/C truncations and generates the Truncation Series graph |
| MSA | Paste a multi-FASTA alignment → per-column conservation graph + residue covariance heatmap (MI with APC; requires ≥4 sequences, ≤500 columns) |
| Complex Mass | Paste chains + stoichiometry (e.g. A2B1) → total MW, extinction coefficients, bar chart |
| Help | Built-in reference; Copy Citation (BibTeX) and Generate Methods Paragraph buttons |
| Group | Setting | Default |
|---|---|---|
| Analysis | Default pH | 7.0 |
| Analysis | Sliding Window Size | 9 |
| Analysis | Override pKa | — (nine comma-separated values) |
| Analysis | Reducing conditions | Off |
| Graphs | Label / Tick font size (default 11/9), Marker size, Format (PNG/SVG/PDF) | — |
| Graphs | Bead colormap, Heatmap colormap, Accent colour, Titles, Grid, Transparent BG | — |
| Interface | Dark theme, Tooltips | — |
| ESM2 | Model size (8M / 35M / 150M / 650M) | 8M |
Click Apply Settings to save to ~/.beer/config.json. Reset to Defaults restores factory values.
| Shortcut | Action |
|---|---|
Ctrl+Enter |
Run analysis |
Ctrl+E |
Export analysis |
Ctrl+G |
Jump to Graphs tab |
Ctrl+S |
Save session |
Ctrl+O |
Load session |
Ctrl+F |
Focus motif search box |
Ctrl+/ |
Show all shortcuts overlay |
BEER uses Meta's ESM2 protein language model with pre-trained linear probe heads bundled in beer/models/. No training is required. Weights download once on the first Analyze call and cache in ~/.cache/torch/hub/.
| Model | Parameters | Speed | Download |
|---|---|---|---|
esm2_t6_8M_UR50D (default) |
8 M | Fastest | ~30 MB |
esm2_t12_35M_UR50D |
35 M | Fast | ~140 MB |
esm2_t30_150M_UR50D |
150 M | Moderate | ~580 MB |
esm2_t33_650M_UR50D |
650 M | Slow (GPU recommended) | ~2.6 GB |
Change the model in Settings → ESM2 model and click Apply Settings.
If ESM2 is not installed, BEER falls back automatically: disorder uses metapredict (Emenecker et al. 2021, Cell Syst.) if available, or a classical sliding-window propensity scale otherwise. The disorder report section displays which method was used. All other analysis runs fully offline without ESM2.
| Metric | Definition |
|---|---|
| MW | Sum of residue masses + water (Da) |
| pI | pH where net charge = 0 (Henderson-Hasselbalch) |
| GRAVY | Mean Kyte-Doolittle hydropathicity |
| Aromaticity | (F + W + Y) / length |
| Extinction coefficient | W×5500 + Y×1490 + (C–C)×125 at 280 nm |
| FCR | (K + R + D + E) / length |
| NCPR | (positive − negative) / length |
| κ (kappa) | Charge patterning: 0 = well-mixed, 1 = fully segregated (Das & Pappu 2013) |
| Ω (omega) | Sticker patterning, same scale as κ |
| Metric | Definition |
|---|---|
| Aliphatic index | 100 × (A + 2.9V + 3.9(I+L)) / length; higher values indicate greater thermostability (Ikai 1980) |
| LARKS | 7-residue windows: ≥1 aromatic, ≥50% LC residues, entropy < 1.8 bit (Hughes et al. 2018) |
| SCD | Pairwise charge product weighted by sequence separation (Sawle & Ghosh 2015) |
| PLAAC score | Per-residue log-odds of yeast prion-like FG vs SwissProt background, window = 41 (Lancaster et al. 2014) |
| PolyX stretch | Run of ≥4 identical consecutive residues |
| Prion-like score | Fraction of N, Q, S, G, Y residues |
| ZYGGREGATOR | Per-residue β-aggregation Z-score (Z_agg^i): 7-residue window average of intrinsic propensity p_agg^i with 21-residue gatekeeper charge correction, normalised to a SwissProt random-sequence baseline. Hotspots where Z_agg ≥ 1.0 over ≥ 4 consecutive residues. (Tartaglia et al. 2008 J. Mol. Biol.; Tartaglia & Vendruscolo 2008 Chem. Soc. Rev.) |
| CamSol | Intrinsic solubility scale (Sormanni et al. 2015) |
GNU General Public License v2. See LICENSE.
Saumyak Mukherjee Theoretical Biophysics, Max Planck Institute of Biophysics, Frankfurt am Main, Germany