PyTantan |Stars| ================ .. |Stars| image:: https://img.shields.io/github/stars/althonos/pytantan.svg?style=social&maxAge=3600&label=Star :target: https://github.com/althonos/pytantan/stargazers :class: dark-light `Cython `_ *bindings and Python interface to* `Tantan `_, *a fast method for identifying repeats in DNA and protein sequences.* |Actions| |Coverage| |PyPI| |Bioconda| |AUR| |Wheel| |Versions| |Implementations| |License| |Source| |Mirror| |Issues| |Docs| |Changelog| |Downloads| .. |Actions| image:: https://img.shields.io/github/actions/workflow/status/althonos/pytantan/test.yml?branch=main&logo=github&style=flat-square&maxAge=300 :target: https://github.com/althonos/pytantan/actions :class: dark-light .. |Coverage| image:: https://img.shields.io/codecov/c/gh/althonos/pytantan?style=flat-square&maxAge=600 :target: https://codecov.io/gh/althonos/pytantan/ :class: dark-light .. |PyPI| image:: https://img.shields.io/pypi/v/pytantan.svg?style=flat-square&maxAge=3600 :target: https://pypi.python.org/pypi/pytantan :class: dark-light .. |Bioconda| image:: https://img.shields.io/conda/vn/bioconda/pytantan?style=flat-square&maxAge=3600 :target: https://anaconda.org/bioconda/pytantan :class: dark-light .. |AUR| image:: https://img.shields.io/aur/version/python-pytantan?logo=archlinux&style=flat-square&maxAge=3600 :target: https://aur.archlinux.org/packages/python-pytantan :class: dark-light .. |Wheel| image:: https://img.shields.io/pypi/wheel/pytantan?style=flat-square&maxAge=3600 :target: https://pypi.org/project/pytantan/#files :class: dark-light .. |Versions| image:: https://img.shields.io/pypi/pyversions/pytantan.svg?style=flat-square&maxAge=3600 :target: https://pypi.org/project/pytantan/#files :class: dark-light .. |Implementations| image:: https://img.shields.io/pypi/implementation/pytantan.svg?style=flat-square&maxAge=3600&label=impl :target: https://pypi.org/project/pytantan/#files :class: dark-light .. |License| image:: https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square&maxAge=3600 :target: https://choosealicense.com/licenses/mit/ :class: dark-light .. |Source| image:: https://img.shields.io/badge/source-GitHub-303030.svg?maxAge=3600&style=flat-square :target: https://github.com/althonos/pytantan/ :class: dark-light .. |Mirror| image:: https://img.shields.io/badge/mirror-LUMC-003EAA.svg?maxAge=3600&style=flat-square :target:https://git.lumc.nl/mflarralde/pytantan/ :class: dark-light .. |Issues| image:: https://img.shields.io/github/issues/althonos/pytantan.svg?style=flat-square&maxAge=600 :target: https://github.com/althonos/pytantan/issues :class: dark-light .. |Docs| image:: https://img.shields.io/readthedocs/pytantan?style=flat-square&maxAge=3600 :target: http://pytantan.readthedocs.io/en/stable/?badge=stable :class: dark-light .. |Changelog| image:: https://img.shields.io/badge/keep%20a-changelog-8A0707.svg?maxAge=3600&style=flat-square :target: https://github.com/althonos/pytantan/blob/main/CHANGELOG.md :class: dark-light .. |Downloads| image:: https://img.shields.io/pypi/dm/pytantan?style=flat-square&color=303f9f&maxAge=3600&label=downloads :target: https://pepy.tech/project/pytantan :class: dark-light Overview -------- `Tantan `_ is a fast method developed by Martin Frith to identify simple repeats in DNA or protein sequences. It can be used to mask repeat regions in reference sequences, and avoid false homology predictions between repeated regions. PyTantan is a Python module that provides bindings to `Tantan `_ using `Cython `_. It implements a user-friendly, Pythonic interface to mask a sequence with various parameters. It interacts with the Tantan interface rather than with the CLI, which has the following advantages: .. grid:: 1 2 3 3 :gutter: 1 .. grid-item-card:: :fas:`battery-full` Batteries-included Just add ``pytantan`` as a ``pip`` or ``conda`` dependency, no need for the ``tantan`` binary or any external dependency. .. grid-item-card:: :fas:`gears` Flexible Pass any `str` or `bytes`-like object containing the raw sequence as an input, and get a `str` as the output. .. grid-item-card:: :fas:`screwdriver-wrench` Configurable Use any scoring matrix from the `scoring-matrices `_ package or build your own. .. grid-item-card:: :fas:`server` Parallel Easily run computations in parallel querying thread-safe `~pytantan.RepeatFinder` with several sequences in parallel. .. grid-item-card:: :fas:`code-compare` Consistent Get the same results as Tantan! You are using the same code under the hood. .. grid-item-card:: :fas:`microchip` Portable Get SIMD-acceleration on any supported platform without having to build the package from scratch. Setup ----- PyTantan is available for all modern Python versions (3.7+). Run ``pip install pytantan`` in a shell to download the latest release from PyPi, or have a look at the :doc:`Installation page ` to find other ways to install ``pytantan``. Library ------- .. toctree:: :maxdepth: 2 User Guide API Reference Related Projects ---------------- The following Python libraries may be of interest for bioinformaticians. .. include:: related.rst License ------- This library is provided under the `GNU General Public License v3.0 or later `_. Tantan is developed by `Martin Frith `_ and is distributed under the terms of the GPLv3 or later as well. See the :doc:`Copyright page ` for more information. *This project was developed by* `Martin Larralde `_ *during his PhD project at the* `Leiden University Medical Center `_ *in the* `Zeller team `_.