Skip to main content

MITOS: de novo annotation of metazoan mitochondrial genomes

Project description

European Galaxy server

These are the mitogenome related sources including MITOS and other (more or less) helpful tools. Note that some of the tools are unfinished and not in a production state.

Usage on Galaxy

MITOS should primarily be used via Galaxy. It is available for instance on usegalaxy.eu

Installation

There are two ways to install. Preferred is the installation via conda since this also takes care of non-python requirements of the main mitos script.

  1. via conda: conda create --strict-channel-priority -c conda-forge -c bioconda -n mitos2 "mitos>=2"
    • this will create a conda environment and install MITOS2. For MITOS use conda create --strict-channel-priority -c conda-forge -c bioconda -n mitos "mitos<2"
    • enable the conda environment with conda activate mitos2 (resp. conda activate mitos)
    • in case of problems with resolving environments try to use use --solver libmamba or replace conda by mamba.
  2. via pip: pip install mitos

For the non-python requirements see README.MITOS.

Development Setup

For developers who want to contribute to MITOS:

  1. Fork the repository on GitLab: https://gitlab.com/Bernt/MITOS

  2. Clone your fork:

    git clone https://gitlab.com/YOUR_USERNAME/MITOS.git
    cd MITOS
    
  3. Set up development environment:

    Option A: Python-only (for basic development):

    pip install -r dev_requirements.txt
    

    Option B: Full conda environment (required for integration tests):

    # Create conda environment with all dependencies
    conda create --strict-channel-priority -c conda-forge -c bioconda -n mitos-dev python=3.7 \
      biopython=1.73 blast>=2.9 hmmer=3.4 infernal>=1.1.5 viennarna r-base r-ggplot2 \
      r-reshape2 openjdk reportlab pillow libtiff pip
    
    # Activate environment and install MITOS in development mode
    conda activate mitos-dev
    pip install -r dev_requirements.txt
    
  4. Optional: Set up pre-commit hooks for automatic linting:

    pip install pre-commit
    pre-commit install
    

    This will automatically take care of things like trailing whitespace, empty lines at the end of files and it will run black, isort, flake8 and mypy before each commit. See configuration in .pre-commit-config.yaml.

Development Workflow

Running tests:

# Linting and code style
tox -e lint

# Type checking
tox -e type

# Unit tests
tox -e py37

# Integration tests (requires conda and reference data)
tox -e integration-py37

Before submitting a merge request:

  1. Ensure all tests pass: tox
  2. Follow the existing code style
  3. Add tests for new functionality
  4. Update documentation if needed

MITOS

  • runmitos.py: standalone CLI MITOS

From runmitos.py help:

mandatory options:
  -c CODE, --code CODE  the genetic code
  -o OUTDIR, --outdir OUTDIR
                        the directory where the output is written
  --linear              treat sequence as linear (not mandatory for circular sequences)
  -r REFSEQVER, --refseqver REFSEQVER
                        directory containing the reference data (relative to --refdir)

Please note that the reference data for the -r flag needs to be downloaded from Zenodo (MITOS, MITOS2).

see also runmitos.py --help or README.MITOS

genbank file handling

  • refseqsplit:
    • splits a file consisting of concatenated gb files into single genbank files
    • its possible to apply filters (taxonomy, prefix)

skewness related programs

  • skew: compute skewness values for a gene of given genbank files
  • skewcum: compute cumulative skewness for given genbank files
  • skewsvm: do svm classification of skewness values .. and try to relate misclassifications to rearrangements

MISC

  • gcpp
    • pretty print and compare genetic code

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

mitos-2.1.10.tar.gz (542.9 kB view details)

Uploaded Source

Built Distribution

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

mitos-2.1.10-py3-none-any.whl (602.3 kB view details)

Uploaded Python 3

File details

Details for the file mitos-2.1.10.tar.gz.

File metadata

  • Download URL: mitos-2.1.10.tar.gz
  • Upload date:
  • Size: 542.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.17

File hashes

Hashes for mitos-2.1.10.tar.gz
Algorithm Hash digest
SHA256 0fcc84806fcca5a5dc49b5acd3874c499e72349a5648bb58a9d4870604a36c21
MD5 11f61773ef8b1e68a2bf63dbd27602f9
BLAKE2b-256 4ce842c2f90c5b39169b7535c7234fd17cbf88ebc951076ce7c9e9bc21f40650

See more details on using hashes here.

File details

Details for the file mitos-2.1.10-py3-none-any.whl.

File metadata

  • Download URL: mitos-2.1.10-py3-none-any.whl
  • Upload date:
  • Size: 602.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.17

File hashes

Hashes for mitos-2.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 07645d3f1a7629b236bacc06321fb2ac4335e33bc1ce176e7c1107c1f525b505
MD5 f927b34fcbd32019f485a376925ac06b
BLAKE2b-256 ac1df799f5dc7e3159c8892935e062953ae7d684a79dea577012a3de2380c8a9

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