Skip to main content

Automated DNA assembly planner for Python

Project description

DASi DNA Design

PyPI version Code style: black pre-commit Build package Language grade: Python Total alerts

DASi is an automatic DNA cloning plan designer aimed for operating on small budgets by focusing on material re-use.

The software converts a nucleotide sequence, or a library of sequences, to an executable molecular assembly plan while optimizing material cost, assembly efficiency, and assembly time.

The key design paradigm for DASi is that no molecular biology expertise is required to use DASi. Complete novices should be able to use the software to design and construct new genetic sequences. This also enables automated software programs to automatically design and construct new genetic sequences.

The software goals are reminiscent of j5 or Teselegen but focused on:

  1. A dead-simple API usable by lab novices, experts or automated software programs.
  2. Utilizing information about current laboratory inventory in its optimization algorithm to minimize costs and turn-around time

Status

DASi is currently under development funded by the DARPA Synergistic Discovery and Design program. DASi is currently being used to connect automatically generate DNA designs to automated biological fabrication facilities (e.g. University of Washington Biofab).

Usage

DASi completely automates the cloning design work, finding approximately optimal solutions for cloning steps, preferentially using existing plasmids, linear DNA fragments, and primers to design semi-optimal cloning steps and designs.

The following command designs the cloning steps for a library of designs. The user only needs to specify the sequences they wish to construct and currently available primers and DNA templates as .genbank or .fasta files. DASi handles all design aspects. No molecular biology expertise is required to use DASi.

dasi library_design --designs mydesigns/*.gb --fragments fragments/*.gb --primers primers.fasta --templates plasmids/*.gb --cost_model cost.b --out results

Customization

DASi optimization parameters are completely customizable. The following are examples of parameters and aspects of DASi that are customizable:

  • primer synthesis costs
  • primer design parameters
  • synthetic fragment costs
  • vendor-specific synthetic fragment complexity
  • sequence dependent plasmid assembly efficiencies
  • optimizing over efficiency vs material costs
  • etc.

Planned Features

  • Golden-gate support
  • heirarchical assembly
  • library support (with bayesian search to optimize shared parts)
  • front-end
  • connection to fabrication facility

DASi optimization problem

Briefly, DASi approximates a solution the following optimization problem:

Given a set of 'goal' double-stranded sequences, a set of available single-stranded and double-strand sequences, and a set of actions that can create new sequences, find the optimal set of operations that produces the 'goal' sequences.

Formalization of this optimization problem is coming soon.

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

dasi-0.2.1.tar.gz (104.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dasi-0.2.1-py3-none-any.whl (118.6 kB view details)

Uploaded Python 3

File details

Details for the file dasi-0.2.1.tar.gz.

File metadata

  • Download URL: dasi-0.2.1.tar.gz
  • Upload date:
  • Size: 104.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.8.3 Linux/5.4.0-65-generic

File hashes

Hashes for dasi-0.2.1.tar.gz
Algorithm Hash digest
SHA256 79be1bbdb8e644f2ffb1aac169b7366843638e459f0736f450a3dae47a6f8019
MD5 0f89d9c410bc6fe568197c6c4675f056
BLAKE2b-256 158c417bd5862069cd56f36f0af86172766a3989fe0ada1e8080f4e42ee67fac

See more details on using hashes here.

File details

Details for the file dasi-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: dasi-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 118.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.8.3 Linux/5.4.0-65-generic

File hashes

Hashes for dasi-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 15f8efd0f3589f3f32c32ad6c525cbd34efeeb6a4735c994601615b848a4d234
MD5 89277402a508ca774119dafcc606c73b
BLAKE2b-256 7fd3efbee4d37f2bfb48bd4e8972a6b13fc6be331af5c5749e03ab627b59c69b

See more details on using hashes here.

Supported by

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