{"slug": "show-hn-open-source-gui-for-editing-3d-molecular-structures-with-diffusion", "title": "Show HN: Open-source GUI for editing 3D molecular structures with diffusion", "summary": "DeepFold Protein released PATCHR-Studio, an open-source GUI for editing 3D molecular structures using diffusion-based inpainting to fill missing regions in proteins, DNA, RNA, and complexes. The tool is backend-agnostic, supports Boltz-2 and Protenix, and achieves a 99.4% connectivity pass rate, with a benchmark showing superior Cα RMSD compared to existing methods.", "body_md": "**Structure inpainting and simulation-ready setup for proteins, DNA, RNA, and complexes**\n\n[Website](https://patchr.deepfold.org/) | [Atlas](https://patchr.deepfold.org/atlas) | [Paper](#cite) | [PATCHR-Studio](#patchr-studio)\n\n**Download PATCHR-Studio:**\n[Windows](https://github.com/DeepFoldProtein/patchr/releases/latest/download/patchr-studio-setup.exe) ·\n[macOS (Apple Silicon)](https://github.com/DeepFoldProtein/patchr/releases/latest/download/patchr-studio.dmg) ·\n[Linux](https://github.com/DeepFoldProtein/patchr/releases/latest/download/patchr-studio.AppImage)\n\n1KX3 : nucleosome histone-tail inpainting |\n6GIS : PCNA + 50 bp DNA extension |\n8GZR : NS3 polymerase + RNA reconstruction |\n4ZLO : Kinase inpainting with ligand |\n\nMost experimental structures in the PDB have **missing regions** -- flexible loops, disordered terminals, unresolved sidechains. PATCHR fills them in using **diffusion-based inpainting** while keeping existing coordinates **exactly as-is**.\n\n**Backend-agnostic**-- supports[Boltz-2](https://github.com/jwohlwend/boltz)and[Protenix](https://github.com/bytedance/protenix)- Works with\n**proteins, DNA, RNA**, and multi-chain complexes - 99.4% connectivity pass rate, from short loops to 600+ residue extensions\n\n[PATCHR Atlas](https://patchr.deepfold.org/atlas) — large-scale inpainting of the PDB\n\nFrom **every PDB complex with an internal missing region** (excluding very large structures), PATCHR inpainted the full set of **66,417 multimeric structures** — all browsable and downloadable.\n\n**Benchmark** — 940 PDB40 structures with artificially introduced gaps mirroring real PDB missing-region statistics. Cα and all-atom RMSD computed over inpainted residues only.\n\n| Method / Configuration | Cα RMSD (Å) | All-atom RMSD (Å) |\n|---|---|---|\nPATCHR (full, + LRD) |\n1.781 |\n2.542 |\n| Boltz-2 + template conditioning | 4.647 | 5.510 |\n| Boltz-2 + template conditioning + steering (threshold = 5.0 Å) | 3.675 | 4.342 |\n| Boltz-2 + template conditioning + steering (threshold = 2.0 Å) | 3.397 | 4.081 |\n| Boltz-2 + template conditioning + steering (threshold = 0.5 Å) | 3.219 | 3.889 |\n| RFdiffusion2 (all-atom) | 9.188 | 10.199 |\n| RFdiffusion (backbone-only) | 2.043 | — |\n\n```\ngit clone https://github.com/DeepFoldProtein/patchr.git\ncd patchr && pip install -e .\n```\n\n**Mac**\n\n```\nconda create --name patchr python=3.12 llvmlite==0.44.0 numba==0.61.0 numpy==1.26.3\nconda activate patchr\ngit clone https://github.com/DeepFoldProtein/patchr.git\ncd patchr && pip install -e .\nexport KMP_DUPLICATE_LIB_OK=TRUE\n```\n\n**Docker**\n\n```\n./scripts/docker-run.sh                # Run with all GPUs\nPATCHR_GPU=0 ./scripts/docker-run.sh   # Select GPU\n```\n\nModel weights are cached at `~/.boltz`\n\non the host (override with `BOLTZ_CACHE`\n\n).\n\nFor Slurm clusters with Apptainer:\n\n```\nsbatch scripts/slurm-run.sh\n```\n\n**1. Generate a template** from a PDB structure:\n\n```\npatchr template 1TON all\n```\n\n**2. Run inpainting:**\n\n```\npatchr predict examples/inpainting/1ton_AB.yaml --out_dir results\n```\n\nThe first run downloads the model checkpoint automatically to `~/.boltz/`\n\n.\n\n**Template options**\n\n```\npatchr template 1CK4 all                    # All polymer chains\npatchr template 4ZLO A,B --uniprot          # With UniProt sequence\npatchr template --input structure.cif A,B    # From local CIF\npatchr template 7EOQ all-copies             # Including duplicate copies\npatchr template 1BNA all -o my_templates/   # Custom output directory\npatchr template 7EOQ A --include-solvent     # Include solvent atoms\npatchr template 1CK4 all --assembly best     # Biological assembly\npatchr template 1CK4 all --relative-paths    # Use relative paths in YAML (default: absolute)\n```\n\n**Prediction options**\n\n```\n# Single file\npatchr predict examples/inpainting/4zlo_ABCD.yaml --out_dir results --seed 42\npatchr predict examples/inpainting/1ck4_AB.yaml --out_dir results --diffusion_samples 5\npatchr predict examples/inpainting/1bna_AB.yaml --out_dir results --backend protenix\npatchr predict examples/inpainting/7eoq_ABCDEFGHIJKLMN.yaml --out_dir results --use_msa_server\n\n# Bulk prediction — pass a directory of YAML files\npatchr predict my_templates/ --out_dir results\npatchr predict my_templates/ --out_dir results --backend protenix --seeds 42,101\n```\n\nGo directly from structure completion to MD simulation input:\n\n```\npatchr predict input.yaml --out_dir results --sim-ready gromacs\npatchr predict input.yaml --out_dir results --sim-ready amber --ff amber14sb\n```\n\n**Standalone command**\n\n```\npatchr sim-ready prediction.cif --engine gromacs --ff charmm36m\npatchr sim-ready prediction.cif --engine openmm --padding 1.2 --ion-conc 0.15\n```\n\nPATCHR uses diffusion-based generation conditioned on your experimental structure as a rigid template:\n\n| Technique | What it does | |\n|---|---|---|\n| 1 | Template Conditioning |\nAnchors known coordinates at every diffusion step |\n| 2 | Synchronized Rigid Template Tracking |\nKeeps the template aligned with the evolving generation |\n| 3 | Local Refinement Denoising |\nCleans up bond geometry at template-generation junctions |\n\nA desktop application providing a graphical interface to the full workflow, with no command line required. Download from the links above or the [releases page](https://github.com/DeepFoldProtein/patchr/releases).\n\nBeyond reconstructing missing regions, the interactive sequence editor supports residue-level edits applied directly on the structure and regenerated in a single inpainting run:\n\n**Erase and regenerate**— remove resolved residues and re-inpaint them** Mutation**— substitute a residue identity; the side chain is rebuilt by inpainting** Post-translational modifications**— introduce modified residues (SEP, TPO, PTR, MLY, M3L)\n\nStaged edits are listed and individually reversible prior to execution, and outputs are versioned for comparison across runs. Prediction, GPU queue status, and simulation-ready export are integrated.\n\n**No GPU?** Run the server on [Google Colab](https://colab.research.google.com/github/DeepFoldProtein/patchr/blob/main/colab_server.ipynb) for free and connect from PATCHR-Studio.\n\n```\npatchr serve --model boltz2 --device-id 0\npatchr serve --model protenix --port 8080\npatchr serve --model all\n```\n\nBeyond the headline RMSDs above, PATCHR also produces simulation-ready geometry:\n\n| Metric | Value |\n|---|---|\n| Backbone RMSD (missing residues) | 1.78 Å |\n| lDDT (missing atoms) | 98.6 |\n| Connectivity pass rate | 99.4% |\n\n**Impact of Local Refinement Denoising (LRD)**\n\n| Metric | With LRD | Without LRD |\n|---|---|---|\n| Structures with no issues | 99.4% |\n87.4% |\n| Cα--Cα gaps (4.5--10 Å) | 0.21% | 4.57% |\n| Peptide bond (C--N) issues | 0.85% | 15.43% |\n| Broken chains (>10 Å) | 0.32% | 0.74% |\n\n**Accuracy by structural context**\n\n| Secondary structure | RMSD (Å) | Solvent accessibility | RMSD (Å) | |\n|---|---|---|---|---|\n| Helix | 0.30 | Buried | 0.39 | |\n| Strand | 0.26 | Intermediate | 0.65 | |\n| Loop | 0.85 | Surface | 1.01 |\n\nAny model trained on the AlphaFold3 framework can be converted into an inpainting model through the PATCHR protocol. Currently implemented for **Boltz-2** and **Protenix** only; extending to additional AF3-family backends is planned.\n\nPATCHR builds upon [Boltz-2](https://github.com/jwohlwend/boltz) by Passaro, Corso, Wohlwend et al. and [Protenix](https://github.com/bytedance/protenix) by ByteDance.\n\nMIT -- free for academic and commercial use.\n\n```\n@article{bae2025patchr,\n  author = {Bae, Hanjin and Kim, Kunwoo and Yoo, Jejoong and Joo, Keehyoung},\n  title = {PATCHR-Studio: Template-conditioned diffusion-based molecular structure\n           inpainting for Protein, RNA, and DNA complexes},\n  year = {2025}\n}\n```\n\n", "url": "https://wpnews.pro/news/show-hn-open-source-gui-for-editing-3d-molecular-structures-with-diffusion", "canonical_source": "https://github.com/DeepFoldProtein/patchr", "published_at": "2026-07-08 18:20:57+00:00", "updated_at": "2026-07-08 18:43:23.801376+00:00", "lang": "en", "topics": ["artificial-intelligence", "machine-learning", "generative-ai", "ai-tools", "ai-research"], "entities": ["DeepFold Protein", "PATCHR-Studio", "Boltz-2", "Protenix", "PDB", "PATCHR Atlas"], "alternates": {"html": "https://wpnews.pro/news/show-hn-open-source-gui-for-editing-3d-molecular-structures-with-diffusion", "markdown": "https://wpnews.pro/news/show-hn-open-source-gui-for-editing-3d-molecular-structures-with-diffusion.md", "text": "https://wpnews.pro/news/show-hn-open-source-gui-for-editing-3d-molecular-structures-with-diffusion.txt", "jsonld": "https://wpnews.pro/news/show-hn-open-source-gui-for-editing-3d-molecular-structures-with-diffusion.jsonld"}}