Skip to main content
Making Biology Programmable
Proto: Programmable Biology
Proto is a high-level programming language for biology. Design DNA, RNA, and protein sequences with constraint-based optimization, composing computational and AI models into a single workflow.

Two Components

Language

A constraint-based optimization framework for designing DNA, RNA, and protein sequences. Declare what you want, compose generators and scorers, and chain optimization stages into pipelines.

Tools

Computational biology and biological AI tools through a single, consistent Python interface. Structure prediction, inverse folding, language models, sequence analysis, and more.

How It Works

1

Define your design space

Create Segments (contiguous sequence regions) and group them into Constructs. Start from scratch or provide a starting sequence.
2

Choose how to generate proposals

Assign Generators to segments. From simple random mutations to protein language models like ESM2 and ESM3, and inverse-folding models like ProteinMPNN.
3

Set your requirements as constraints

Constraints score how well each proposal meets your requirements. Use any of 120+ bioinformatics tools as scoring functions.
4

Run optimization

Optimizers search sequence space to minimize total constraint scores. Chain multiple optimizers in a Program for multi-stage pipelines.

Get Started

Language: Installation

Set up the optimization framework

Language: Quickstart

Design your first sequence

Tools: Installation

Set up the bioinformatics tools library

Tools: Quickstart

Run your first tool