Skip to main content
FreeBindCraft Binder Design
License: FreeBindCraft uses MIT for code and CC-BY-4.0 for model weights and may require explicit attribution when utilized. Please refer to the code license and model weights license for full terms.

This generator is open source. Any third-party models, product names, or trademarks referenced are the property of their respective owners, and Proto is not affiliated with them.


Go to Tool Page
evo-design/proto-language/proto_language/generator/freebindcraft_generator.py
View source
@article{pacesa2025bindcraft,
  title={One-shot design of functional protein binders with BindCraft},
  author={Pacesa, Martin and Nickel, Lennart and Schellhaas, Christian and Schmidt, Joseph and Pyatova, Ekaterina and Kissling, Lucas and Barendse, Patrick and Choudhury, Jagrity and Kapoor, Srajan and Alcaraz-Serna, Ana and Cho, Yehlin and Ghamary, Kourosh H. and Vinu{\'e}, Laura and Yachnin, Brahm J. and Wollacott, Andrew M. and Buckley, Stephen and Westphal, Adrie H. and Lindhoud, Simon and Georgeon, Sandrine and Goverde, Casper A. and Hatzopoulos, Georgios N. and G{\"o}nczy, Pierre and Muller, Yannick D. and Schwank, Gerald and Swarts, Daan C. and Vecchio, Alex J. and Schneider, Bernard L. and Ovchinnikov, Sergey and Correia, Bruno E.},
  journal={Nature},
  volume={646},
  number={8084},
  pages={483--492},
  year={2025},
  month={Aug},
  publisher={Springer Science and Business Media LLC},
  doi={10.1038/s41586-025-09429-6},
  issn={1476-4687}
}

@misc{freebindcraft2025,
  title={FreeBindCraft: BindCraft with optional, PyRosetta-free scoring and relaxation},
  author={{cytokineking} and {FreeBindCraft contributors}},
  year={2025},
  howpublished={\url{https://github.com/cytokineking/FreeBindCraft}},
  note={MIT-licensed fork of BindCraft replacing PyRosetta with OpenMM, FreeSASA, and sc-rs}
}
Copy citation
De novo protein binder generator using the PyRosetta-free FreeBindCraft pipeline. Hallucinates a binder against a frozen target with AlphaFold2, refines it with ProteinMPNN, re-validates with AlphaFold2, and scores the interface with OpenMM/FreeSASA/sc-rs. The assigned segment’s length is the binder length, and its proposal count is the number of designs requested. Each accepted design’s sequence, predicted complex, and metrics are written onto a proposal; if the pipeline returns fewer designs than requested, the proposal pool is truncated to what it produced, and an empty result raises.

API Reference

ConfigFreeBindCraftGeneratorConfig Source
Configuration object for FreeBindCraftGenerator.Bundles the target specification with the full FreeBindCraft pipeline settings. The binder length and the number of designs are NOT set here — they are derived from the assigned segment (length = the segment’s length; one design per proposal slot) at sample time.
target_structure
Structure | string
required
Target to design a binder against (file path, PDB/CIF content, or Structure).
target_chain
string
default:"A"
Chain ID(s) of the frozen target (comma-separated for multi-chain).
target_hotspot_residues
string
Comma-separated 1-indexed target residues the binder must contact (e.g. ‘1-10,56’).
binder_name
string
default:"binder"
Filename prefix recorded on each accepted design.
design_config
FreeBindCraftConfig
FreeBindCraft pipeline settings; the program seed overrides its seed field.

Usage

python
>>> from proto_language.core import Segment
>>> from proto_language.generator import FreeBindCraftGenerator, FreeBindCraftGeneratorConfig
>>> config = FreeBindCraftGeneratorConfig(target_structure="/path/to/target.pdb", target_chain="A")
>>> gen = FreeBindCraftGenerator(config)
>>> segment = Segment(length=80, sequence_type="protein")
>>> gen.assign(segment)
>>> gen.sample()  # writes one accepted binder design per proposal

Metadata

PropertyValue
Keyfreebindcraft
ClassFreeBindCraftGenerator
Categorymutation
Input Typestarting_sequence
Uses GPUTrue
Supported Sequence Typesprotein
Allows Empty StartTrue