Skip to main content

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.

Metadata

Release files for dasi 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dasi 0.2.1
File Size Uploaded
dasi-0.2.1.tar.gz 104.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dasi 0.2.1
File Interpreter ABI Platform
dasi-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 223.1 kB

Release files / dasi-0.2.1.tar.gz

Download URL dasi-0.2.1.tar.gz
Size 104.5 kB
Tags Source
SHA-256 checksum
How to use checksums
79be1bbdb8e644f2ffb1aac169b7366843638e459f0736f450a3dae47a6f8019
BLAKE2b-256 checksum
How to use checksums
158c417bd5862069cd56f36f0af86172766a3989fe0ada1e8080f4e42ee67fac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.4 CPython/3.8.3 Linux/5.4.0-65-generic

Release files / dasi-0.2.1-py3-none-any.whl

Download URL dasi-0.2.1-py3-none-any.whl
Size 118.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
15f8efd0f3589f3f32c32ad6c525cbd34efeeb6a4735c994601615b848a4d234
BLAKE2b-256 checksum
How to use checksums
7fd3efbee4d37f2bfb48bd4e8972a6b13fc6be331af5c5749e03ab627b59c69b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.4 CPython/3.8.3 Linux/5.4.0-65-generic

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2

2 release files

0.1.1

2 release files

0.1

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page