{ "info": { "author": "Brian D. Weitzner", "author_email": "bweitzner@lyellbio.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Bio-Informatics" ], "description": "=============\nCodon Harmony\n=============\n\n\n.. image:: https://img.shields.io/pypi/v/codon_harmony.svg\n :target: https://pypi.python.org/pypi/codon_harmony\n \n.. image:: https://img.shields.io/badge/License-MIT-yellow.svg\n :target: https://opensource.org/licenses/MIT\n :alt: MIT License\n\n.. image:: https://img.shields.io/travis/weitzner/codon_harmony.svg\n :target: https://travis-ci.org/weitzner/codon_harmony\n\n.. image:: https://readthedocs.org/projects/codon-harmony/badge/?version=latest\n :target: https://codon-harmony.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation status\n\n.. image:: https://codecov.io/gh/weitzner/codon_harmony/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/weitzner/codon_harmony\n :alt: Coverage report\n\n.. image:: https://pyup.io/repos/github/weitzner/codon_harmony/shield.svg\n :target: https://pyup.io/repos/github/weitzner/codon_harmony/\n :alt: Updates\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :target: https://github.com/ambv/black\n :alt: Code style: black\n\n\nAmino acid reverse translation and DNA optimization tool based on species-specific codon-use distributions.\nSpecies-specifc data can be found on the `Codon Usage Database`_ using the `NCBI Taxonomy database`_ id (e.g. 413997) or the organism's Latin name (e.g. *Escherichia coli* B). Mapping species names to Taxonomy IDs can be done here_.\n\n.. _`Codon Usage Database`: http://www.kazusa.or.jp/codon\n.. _`NCBI Taxonomy database`: http://www.ncbi.nlm.nih.gov/taxonomy\n.. _here: https://www.ncbi.nlm.nih.gov/Taxonomy/TaxIdentifier/tax_identifier.cgi\n\n* Documentation: https://codon-harmony.readthedocs.io\n\n\nFeatures\n--------\n\n1. Reverse translates input amino acid sequence to DNA.\n2. Calculates the host's per-AA codon usage profile \u2013 codons used less than a specified threshold (defaults to 10%) are dropped.\n3. Compares the reverse-translated DNA sequence to the host profile, determines which codons are overused/underused.\n4. Stochastically mutates codons according to host profile.\n5. Ranks sequences by codon adaptation index relative to host\n6. Processes DNA to remove unwanted features:\n\n * high GC content within a sliding window and across the entire sequence\n * unwanted restriction sites\n * alternate start positions (GA-rich regions 18 bp upstream of ATG/GTG/TTG)\n * 3-consecutive identical codons and 9-mer repeat chunks\n * areas with more than 4 (variable) consecutive identical bps (\"local homopolymers\")\n * RNA hairpins, detected by looking for 10-mers with reverse complements (including wobble bases) in the sequence\n * RNA splice sites, detected by similarity to consensus donor and acceptor site sequences\n \nThe process is repeated from step 3 for a specified number of cycles (defaults to 1000) OR until the per-AA codon profile of current DNA and host profile matches (within tolerance).\n\nFuture work\n-----------\n\n- More advanced RNA-structure removal\n\n * CONTRAfold_ \u2013 overkill for now\n * nupack_ \u2013 overkill for now\n\n.. _CONTRAfold: http://contra.stanford.edu/contrafold/\n.. _nupack: http://nupack.org\n\n\n=======\nHistory\n=======\n\n0.9.2 (2019-02-06)\n------------------\n\n* First release on PyPI.\n\n\n0.9.4 (2019-02-20)\n------------------\n\n* Full suite of tests added, bugs uncovered and fixed\n* Adjustments to the packaging setup -- actaully installable now\n\n\n0.9.5 (2019-02-25)\n------------------\n\n* Adding support for RNA splice site detection and removal\n\n\n0.9.6 (2019-02-28)\n------------------\n\n* Updating the way optimization failures are reported and displayed\n* Parallelizing via a process pool\n\n\n1.0.0 (2019-03-06)\n------------------\n\n* Added ability to use offline tables in addition to fetching from the internet\n* Full suite of tests and documentation\n* Tested on real-world sequences to", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "codon_harmony", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "codon-harmony", "package_url": "https://pypi.org/project/codon-harmony/", "platform": "", "project_url": "https://pypi.org/project/codon-harmony/", "project_urls": null, "release_url": "https://pypi.org/project/codon-harmony/1.0.0/", "requires_dist": null, "requires_python": ">=3.6", "summary": "Amino acid reverse translation and DNA optimization tool based on species-specific codon-use distributions.", "version": "1.0.0" }, "last_serial": 4907690, "releases": { "0.9.2": [ { "comment_text": "", "digests": { "md5": "8f368fa1c97655f7475126712cc67115", "sha256": "c00d00172e7d162720ce21d776f0b516fe96e892692a1fe0eb97d1c46804c644" }, "downloads": -1, "filename": "codon_harmony-0.9.2.tar.gz", "has_sig": false, "md5_digest": "8f368fa1c97655f7475126712cc67115", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12392, "upload_time": "2019-02-07T06:37:55", "url": "https://files.pythonhosted.org/packages/b1/f0/c4e860f829c42f3a0696f4e128d17830619aac2cbd0a5dacfff1bc42d777/codon_harmony-0.9.2.tar.gz" } ], "0.9.3": [ { "comment_text": "", "digests": { "md5": "006bb71c62c0e0e043e62d2b6c147aca", "sha256": "80631262d34a5cb69e78270232aa6a294b3b74c3c9128e1129524ddd14c8b468" }, "downloads": -1, "filename": "codon_harmony-0.9.3.tar.gz", "has_sig": false, "md5_digest": "006bb71c62c0e0e043e62d2b6c147aca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12033, "upload_time": "2019-02-11T21:32:38", "url": "https://files.pythonhosted.org/packages/c4/84/41b01153cb73dbdc011b6b11901d039d7f885af5d9a42c951817e48d5893/codon_harmony-0.9.3.tar.gz" } ], "0.9.4": [ { "comment_text": "", "digests": { "md5": "9a3c3e7fa85c5b9f9c6c39b5e9ccaab0", "sha256": "903535225bc68c647ee5bda5c887d72128abfbc2e679e6bae510211075a81c3b" }, "downloads": -1, "filename": "codon_harmony-0.9.4.tar.gz", "has_sig": false, "md5_digest": "9a3c3e7fa85c5b9f9c6c39b5e9ccaab0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 26412, "upload_time": "2019-02-20T21:37:15", "url": "https://files.pythonhosted.org/packages/b9/aa/38bd96e2c9ec09381d7406e6ef0c821cfacc549a34d70f3c45292fb6ebc5/codon_harmony-0.9.4.tar.gz" } ], "0.9.5": [ { "comment_text": "", "digests": { "md5": "23e36ff9e80d7301fc52ff3f6dbfb1a6", "sha256": "17b503b3041fe97eaeef49ac3443104baa6ab5daba1c3abe8079ec2a93d255b1" }, "downloads": -1, "filename": "codon_harmony-0.9.5.tar.gz", "has_sig": false, "md5_digest": "23e36ff9e80d7301fc52ff3f6dbfb1a6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 28678, "upload_time": "2019-02-25T17:03:50", "url": "https://files.pythonhosted.org/packages/57/37/f6df6266bf257e15d27bf278bdded5134757df943d059941bb749a3571d9/codon_harmony-0.9.5.tar.gz" } ], "0.9.6": [ { "comment_text": "", "digests": { "md5": "2c926433248b27df10bbb5146a0fbfdc", "sha256": "d970b675e46fd2bd2ed0837d91bf178a4581515f0d8e90a08e78c7b238afe242" }, "downloads": -1, "filename": "codon_harmony-0.9.6.tar.gz", "has_sig": false, "md5_digest": "2c926433248b27df10bbb5146a0fbfdc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 30167, "upload_time": "2019-03-01T07:10:44", "url": "https://files.pythonhosted.org/packages/2c/cd/a3da87c3ef7a881962e07039e1f7c682cdf19c11af8662ca2b07825bacdd/codon_harmony-0.9.6.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "fb4e6a931a5cdce092e664682154cbf1", "sha256": "b75d4f67e08868de02a6b2da2884fddd91fc27d8ef9311100bfdcf41133bcb0b" }, "downloads": -1, "filename": "codon_harmony-1.0.0.tar.gz", "has_sig": false, "md5_digest": "fb4e6a931a5cdce092e664682154cbf1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 31112, "upload_time": "2019-03-07T00:10:29", "url": "https://files.pythonhosted.org/packages/1c/cb/ea0fe9b327f78b4f419bd8549284ac30da6f2eb4a758f25547ba8f85ccf0/codon_harmony-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fb4e6a931a5cdce092e664682154cbf1", "sha256": "b75d4f67e08868de02a6b2da2884fddd91fc27d8ef9311100bfdcf41133bcb0b" }, "downloads": -1, "filename": "codon_harmony-1.0.0.tar.gz", "has_sig": false, "md5_digest": "fb4e6a931a5cdce092e664682154cbf1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 31112, "upload_time": "2019-03-07T00:10:29", "url": "https://files.pythonhosted.org/packages/1c/cb/ea0fe9b327f78b4f419bd8549284ac30da6f2eb4a758f25547ba8f85ccf0/codon_harmony-1.0.0.tar.gz" } ] }