Skip to main content

DNA Chisel (complete documentation here) is a Python library for optimizing DNA sequences with respect to a set of constraints and optimization objectives. It comes with over 15 classes of sequence specifications which can be composed to, for instance, codon-optimize genes, meet the constraints of a commercial DNA provider, avoid homologies between sequences, tune GC content, or all of this at once!

DNA Chisel also allows users to define their own specifications in Python, making the library suitable for a large range of automated sequence design applications, and complex custom design projects. It can be used as a Python library, a command-line interface, or a web application.

Example of use

from dnachisel import *

# DEFINE THE OPTIMIZATION PROBLEM

some_sequence = random_dna_sequence(10000)
problem = DnaOptimizationProblem(
    sequence=some_sequence,
    constraints=[
        AvoidPattern("BsaI_site"),
        EnforceGCContent(mini=0.3, maxi=0.7, window=50),
        EnforceTranslation(location=(500, 1400))
    ],
    objectives=[CodonOptimize(species='e_coli', location=(500, 1400))]
)

# SOLVE THE CONSTRAINTS, OPTIMIZE WITH RESPECT TO THE OBJECTIVE

problem.resolve_constraints()
problem.optimize()

# PRINT SUMMARIES TO CHECK THAT CONSTRAINTS PASS

print(problem.constraints_text_summary())
print(problem.objectives_text_summary())

Alternatively, DNA Chisel lets you define problems by annotating a Genbank file. You can also define a problem by annotating directly a Genbank as follows:

[logo]

See this page for an overview of available specifications.

Infos

PIP installation:

pip install dnachisel[reports]

(you can omit the [reports] suffix if you intend to use dnachisel only for sequence optimization, without generating figures or PDF reports)

Web documentation: https://edinburgh-genome-foundry.github.io/DnaChisel/

Github Page: https://github.com/Edinburgh-Genome-Foundry/DnaChisel

Live demo: http://cuba.genomefoundry.org/sculpt_a_sequence

License: MIT

Copyright 2017 Edinburgh Genome Foundry, University of Edinburgh

More biology software

https://raw.githubusercontent.com/Edinburgh-Genome-Foundry/Edinburgh-Genome-Foundry.github.io/master/static/imgs/logos/egf-codon-horizontal.png

DNA Chisel is part of the EGF Codons synthetic biology software suite for DNA design, manufacturing and validation.

Release files for dnachisel 3.2.16

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

Source distribution (sdist)

Source distribution for dnachisel 3.2.16
File Size Uploaded
dnachisel-3.2.16.tar.gz 116.2 kB Details

Built distribution (wheel)

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

Total release size: 263.4 kB

Release files / dnachisel-3.2.16.tar.gz

Download URL dnachisel-3.2.16.tar.gz
Size 116.2 kB
Tags Source
SHA-256 checksum
How to use checksums
de872bf5c92b110e0b3c78e09e7bacafa711a3a61ee707449574b5c096974497
BLAKE2b-256 checksum
How to use checksums
ba843353ca63bdd00c340491b1b04bf5ffbb0fe522bf9989ff91b78fa4b1f648
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 10, 2025.

Transparency log

Release files / dnachisel-3.2.16-py3-none-any.whl

Download URL dnachisel-3.2.16-py3-none-any.whl
Size 147.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ec557276867b864a0cedb3b376f59d677c7b25699bbef884acad09131321e76f
BLAKE2b-256 checksum
How to use checksums
20c01489e78e116c415dca9d6bccd5cc33abbd81810e0cbd8e02eb11e9099f60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 10, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

3.2.16 This release

2 release files

3.2.13

2 release files

3.2.12

2 release files

3.2.10

2 release files

3.2.9

2 release files

3.2.8

2 release files

3.2.7

2 release files

3.2.6

2 release files

3.2.5

2 release files

3.2.4

2 release files

3.2.3

2 release files

3.2.2

1 release file

3.2.1

1 release file

3.2.0

1 release file

3.1.1

1 release file

3.1.0

1 release file

3.0.2

1 release file

3.0.1

1 release file

3.0.0

1 release file

2.1.0

1 release file

2.0.0

1 release file

1.4.1

1 release file

1.4

1 release file

1.3

1 release file

1.2

1 release file

1.1

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.0

1 release file

0.1.9

1 release file

0.1.8

1 release file

0.1.7

1 release file

0.1.6

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

1 release file

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