Skip to main content

Automated plasmid design from speadsheet specification

Project description


pip install plasmid_design


In a new directory, save the following to config.yaml, then run plasmid_design run. The drive_key below refers to this spreadsheet.

drive_key: &drive_key 1QWFQUlIJYERJ6zY-THD9uNagD2a_He7RUfcOeF2eEKM
  # vector definitions
    table: drive_key:templates
    # selects just these rows
    gate: experiment == "example"
    drive_key: *drive_key

  # DNA and protein part definitions
    table: drive_key:parts
    drive_key: *drive_key
  # these DNA features will automatically be annotated
    table: drive_key:features
    drive_key: *drive_key
  # these restriction sites will be avoided
    table: drive_key:enzymes
    # selects just these rows
    gate: pT02_BsaI == "x"
    drive_key: *drive_key

The run command prints estimated cost and complexity scores. The following files will be generated:

gene_order.fa # genes, ready to order
gene_order_idt_scores.csv # IDT gene synthesis complexity scores (different from gblock complexity)
parts.csv # snapshot of input table
templates.csv # snapshot of input table
features.csv # snapshot of input table
reverse_translations/restriction_enzymes.csv # snapshot of input table
reverse_translations/input.fa # amino acid parts that need reverse translation
reverse_translations/output.fa # corresponding DNA, generated by DNA Chisel
reverse_translations/idt_scores.csv # per-part IDT gene synthesis complexity scores, not meaningful for short parts
reverse_translations/dna_chisel/ # DNA Chisel logs


Tables can be sourced in different ways.

  • local csv
    • table: /path/to/csv
  • private google sheets
    • table: "drive:{spreadsheet name}/{sheet name}"
  • public google sheets
    • table: "drive_key:{sheet_name}"
    • drive_key: {drive_key}

For the public option, first enable link access in google sheets, then copy drive_key from the URL:{drive_key}/.

Changing the vector backbone

The DNA sequences upstream and downstream of the designed gene in the plasmid map are identified by having "up" or "down" in the part name. To change the vector backbone, define new upstream and downstream DNA parts, then change the template column in the templates sheet accordingly.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plasmid_design-0.0.4.tar.gz (15.3 kB view hashes)

Uploaded source

Built Distribution

plasmid_design-0.0.4-py3-none-any.whl (15.9 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page