Skip to content

Releases: 001TMF/ProteinView

v0.3.0 — SSH-Aware Render Modes & Interface Interactions

14 Mar 16:59
6398ea9

Choose a tag to compare

What's New

3-Tier Render Mode System

  • Braille — text-based, works everywhere including SSH and tmux
  • HD (m key) — Lambert-shaded colored braille with z-buffer and depth fog
  • FullHD (M key) — Sixel/Kitty pixel graphics with custom PNG compression

SSH-Aware Rendering

  • --hd auto-detects SSH: defaults to fast HD (text) over SSH, FullHD locally
  • --fullhd forces pixel graphics regardless of connection
  • PNG-compressed Kitty protocol (~10-20x smaller than raw RGBA) makes FullHD viable over SSH
  • Warning shown when entering FullHD over SSH

Interface Interaction Visualization

  • Press I (Shift+I) when interface mode (f) is active
  • Dashed lines between interacting atom pairs, color-coded:
    • Cyan: hydrogen bonds (≤3.5Å)
    • Red: salt bridges (≤4.0Å)
    • Yellow: hydrophobic contacts (≤4.5Å)
    • Gray: other contacts
  • Sidebar panel shows interaction counts with color legend

Other Improvements

  • Auto-scaling line thickness based on framebuffer resolution
  • Smooth auto-rotate with dt clamping (no jitter on frame skips)
  • pLDDT confidence coloring for AlphaFold structures
  • Help overlay panic fix on small terminals
  • 115 tests passing

Full Changelog

v0.2.6...v0.3.0

v0.2.6 — Production Cleanup

12 Mar 17:32

Choose a tag to compare

What's Changed

  • Chain color scheme now correctly colors ligands by their parent chain (was fixed magenta)
  • Added 4HHB integration test verifying HEM ligand parsing
  • Suppressed clippy warning on render function
  • Version bump for production release

Full small molecule support was added in v0.2.5 — see that release for details.

v0.2.5 — Small Molecule Support

12 Mar 17:32

Choose a tag to compare

What's New

Small Molecule Support

  • Parse HETATM records — ligands rendered as ball-and-stick, ions as spheres
  • Water molecules (HOH/WAT) automatically filtered from display
  • Classification: multi-atom molecules as Ligands, single-atom metals as Ions
  • Works in both HD (3D shaded spheres + sticks) and Braille modes
  • Toggle visibility with g key

Ligand Binding Pocket Analysis

  • Detects polymer residues within 4.5Å of each ligand
  • Shows binding pocket contacts in the interface panel
  • Per-ligand summary with closest residues and distances

Extended Element Coloring

  • CPK palette expanded: Mg, Zn, Ca, Mn, Co, Cu, Ni, Cl, Br
  • Ligands colored magenta (Structure), cyan for ions, or by element (CPK mode)
  • Chain mode colors ligands by parent chain

Bug Fix

  • NMR multi-model PDB files now load correctly (only first model used)
  • Fixes GitHub issue #1: RNA structures like 2KGP no longer crash or show duplicates

Stats

  • 65 tests passing
  • 18 files changed, 1170 insertions

v0.2.0 — RNA/DNA Support + Depth Tinting

12 Mar 17:31

Choose a tag to compare

What's New

RNA/DNA Structure Support

  • Full rendering support for nucleic acid structures across all three visualization modes (Backbone, Wireframe, Cartoon)
  • Backbone mode uses C4' trace for nucleic acids (vs CA for proteins)
  • Wireframe mode renders phosphodiester bonds (O3'→P) between nucleotides
  • HD Cartoon mode features triangle-mesh tube backbone + 3D shaded base slabs
  • Nucleotide base-type coloring in Structure scheme: A=red, U/T=blue, G=green, C=yellow, I=purple

24-bit Depth-Tinted Shading (HD mode)

  • Post-pass depth fog blending toward cool blue-gray tone
  • Gives vivid foreground and desaturated background
  • Applies uniformly across all rendering modes (triangles, lines, circles)

Other

  • Centralized nucleotide constants and backbone detection
  • 52 tests passing

v0.1.0 — Initial Release

04 Mar 20:58

Choose a tag to compare

ProteinView v0.1.0

Terminal protein structure viewer with interactive 3D visualization.

Features

  • Cartoon ribbon rendering with depth fog and Lambert shading
  • 3 visualization modes: Cartoon, Backbone, Wireframe
  • 5 color schemes: secondary structure, chain, element, B-factor, rainbow
  • Braille rendering — colored Unicode braille (2x4 dots per cell), works everywhere including SSH
  • HD pixel rendering — Sixel/Kitty/iTerm2 graphics protocol support via ratatui-image
  • Protein-protein interface analysis — detect and highlight inter-chain contacts
  • PDB and mmCIF format support with secondary structure parsing
  • Fetch from RCSB PDB by ID (--fetch, optional feature)
  • Vim-style keybindings with auto-rotation

Install

cargo install --path .

Quick Start

proteinview examples/4HHB.pdb       # braille mode
proteinview examples/4HHB.pdb --hd  # HD pixel mode