{"id":19234354,"url":"https://github.com/moshi4/pybarrnap","last_synced_at":"2025-04-21T05:30:52.143Z","repository":{"id":218876395,"uuid":"747625797","full_name":"moshi4/pybarrnap","owner":"moshi4","description":"Python implementation of barrnap (Bacterial ribosomal RNA predictor)","archived":false,"fork":false,"pushed_at":"2024-03-13T15:25:01.000Z","size":22128,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-04-14T07:11:59.965Z","etag":null,"topics":["bioinformatics","genome-annotation","genomics","microbial-genomics","microbiology","python","rna"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/moshi4.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-24T10:12:44.000Z","updated_at":"2024-04-11T17:59:00.000Z","dependencies_parsed_at":"2024-09-08T16:45:40.215Z","dependency_job_id":null,"html_url":"https://github.com/moshi4/pybarrnap","commit_stats":{"total_commits":3,"total_committers":2,"mean_commits":1.5,"dds":"0.33333333333333337","last_synced_commit":"d779a082844d4a3fec05988ce55d3bb6414d1271"},"previous_names":["moshi4/pybarrnap"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moshi4%2Fpybarrnap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moshi4%2Fpybarrnap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moshi4%2Fpybarrnap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moshi4%2Fpybarrnap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/moshi4","download_url":"https://codeload.github.com/moshi4/pybarrnap/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223849243,"owners_count":17213640,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bioinformatics","genome-annotation","genomics","microbial-genomics","microbiology","python","rna"],"created_at":"2024-11-09T16:13:34.424Z","updated_at":"2024-11-09T16:13:35.064Z","avatar_url":"https://github.com/moshi4.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pybarrnap: Python implementation of barrnap\n\n![Python3](https://img.shields.io/badge/Language-Python3-steelblue)\n![OS](https://img.shields.io/badge/OS-_Mac_|_Linux-steelblue)\n![License](https://img.shields.io/badge/license-GPLv3-blue)\n[![Latest PyPI version](https://img.shields.io/pypi/v/pybarrnap.svg)](https://pypi.python.org/pypi/pybarrnap)\n[![Bioconda](https://img.shields.io/conda/vn/bioconda/pybarrnap.svg?color=green)](https://anaconda.org/bioconda/pybarrnap)\n[![CI](https://github.com/moshi4/pybarrnap/actions/workflows/ci.yml/badge.svg)](https://github.com/moshi4/pybarrnap/actions/workflows/ci.yml)\n\n## Table of contents\n\n- [Overview](#overview)\n- [Installation](#installation)\n- [CLI Usage](#cli-usage)\n- [API Usage](#api-usage)\n- [LICENSE](#license)\n\n## Overview\n\npybarrnap is a python implementation of [barrnap](https://github.com/tseemann/barrnap) (Bacterial ribosomal RNA predictor).\npybarrnap provides a CLI compatible with barrnap and also provides a python API for running rRNA prediction and retrieving predicted rRNA.\npybarrnap default mode depends only on the python library and not on the external command-line tools nhmmer and bedtools.\nAs an additional feature from barrnap, accurate mode is available by installing the external command-line tool cmscan([infernal](http://eddylab.org/infernal/)).\n\n\u003e [!NOTE]\n\u003e Barrnap v0.9 uses the HMM profile database created from older releases of Rfam and SILVA.\n\u003e On the other hand, pybarrnap default mode uses the HMM profile database created from the Rfam(14.10).\n\u003e Therefore, there will be some differences in results between Barrnap v0.9 and pybarrnap default mode.\n\n## Installation\n\n`Python 3.8 or later` is required for installation.\npybarrnap depends on [pyhmmer](https://github.com/althonos/pyhmmer) and [biopython](https://github.com/biopython/biopython) python library.\nIf accurate mode is required, please install [infernal](http://eddylab.org/infernal/) additionally.\n\n**Install PyPI package:**\n\n    pip install pybarrnap\n\n**Install bioconda package:**\n\n    conda install -c conda-forge -c bioconda pybarrnap\n\n**Use Docker ([Image Registry](https://github.com/moshi4/pybarrnap/pkgs/container/pybarrnap)):**\n\n    docker run -it --rm ghcr.io/moshi4/pybarrnap:latest pybarrnap -h\n\n## CLI Usage\n\n### Basic Command\n\n    pybarrnap genome.fna \u003e genome_rrna.gff\n\n### Options\n\n    $ pybarrnap --help\n    usage: pybarrnap [options] genome.fna[.gz] \u003e genome_rrna.gff\n\n    Python implementation of barrnap (Bacterial ribosomal RNA predictor)\n\n    positional arguments:\n      fasta              Input fasta file (or stdin)\n\n    optional arguments:\n      -e , --evalue      E-value cutoff (default: 1e-06)\n      -l , --lencutoff   Proportional length threshold to label as partial (default: 0.8)\n      -r , --reject      Proportional length threshold to reject prediction (default: 0.25)\n      -t , --threads     Number of threads (default: 1)\n      -k , --kingdom     Target kingdom [bac|arc|euk|all] (default: 'bac')\n                         kingdom='all' is available only when set with `--accurate` option\n      -o , --outseq      Output rRNA hit seqs as fasta file (default: None)\n      -i, --incseq       Include FASTA input sequences in GFF output (default: OFF)\n      -a, --accurate     Use cmscan instead of pyhmmer.nhmmer (default: OFF)\n      -q, --quiet        No print log on screen (default: OFF)\n      -v, --version      Print version information\n      -h, --help         Show this help message and exit\n\n\u003e [!TIP]\n\u003e If `--accurate` option is set, cmscan(infernal) is used for rRNA search instead of pyhmmer.nhmmer.\n\u003e Although cmscan is slower than pyhmmer.nhmmer, it is expected to give more accurate results because it performs rRNA searches using RNA secondary structure profiles.\n\n### CLI Example\n\nClick [here](https://github.com/moshi4/pybarrnap/raw/main/examples/examples.zip) to download examples dataset.\n\n#### CLI Example 1\n\nPrint rRNA prediction result on screen\n\n    pybarrnap examples/bacteria.fna\n\n#### CLI Example 2\n\nOutput rRNA predition result to file\n\n    pybarrnap examples/archaea.fna -k arc --outseq rrna.fna --incseq \u003e rrna_incseq.gff\n\n#### CLI Example 3\n\nWith pipe stdin\n\n    cat examples/fungus.fna | pybarrnap -q -k euk | grep 28S\n\n## API Usage\n\npybarrnap provides simple API for running rRNA prediction and retrieving predicted rRNA.\n\n[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/moshi4/pybarrnap/blob/main/notebooks/pybarrnap.ipynb)\n\n```python\nfrom pybarrnap import Barrnap\nfrom pybarrnap.utils import load_example_fasta_file\n\n# Get example fasta file path\nfasta_file = load_example_fasta_file(\"bacteria.fna\")\n\n# Run pybarrnap rRNA prediction\nbarrnap = Barrnap(\n    fasta_file,\n    evalue=1e-6,\n    lencutoff=0.8,\n    reject=0.25,\n    threads=1,\n    kingdom=\"bac\",\n    accurate=False,\n    quiet=False,\n)\nresult = barrnap.run()\n\n# Output rRNA GFF file\nresult.write_gff(\"bacteria_rrna.gff\")\n# Output rRNA GFF file (Include input fasta sequence)\nresult.write_gff(\"bacteria_rrna_incseq.gff\", incseq=True)\n# Output rRNA fasta file\nresult.write_fasta(\"bacteria_rrna.fna\")\n\n# Get rRNA GFF text and print\nprint(\"\\n========== Print rRNA GFF ==========\")\nprint(result.get_gff_text())\n\n# Get rRNA features and print\nprint(\"\\n========== Print rRNA features ==========\")\nfor rec in result.seq_records:\n    for feature in rec.features:\n        print(feature.id, feature.type, feature.location, feature.qualifiers)\n\n# Get rRNA sequences and print\nprint(\"\\n========== Print rRNA sequences ==========\")\nfor rec in result.get_rrna_seq_records():\n    print(f\"\u003e{rec.id}\\n{rec.seq}\")\n```\n\n## LICENSE\n\npybarrnap was reimplemented in python based on the perl implementation of Barrnap v0.9.\nHMM(Hidden Marcov Model) and CM(Covariance Model) profile database for pybarrnap was created from Rfam(14.10).\n\n- pybarrnap: [GPLv3](https://github.com/moshi4/pybarrnap/blob/main/LICENSE)  \n- Barrnap([v0.9](https://github.com/tseemann/barrnap/tree/0.9)): [GPLv3](https://github.com/moshi4/pybarrnap/blob/main/src/pybarrnap/db/LICENSE.Barrnap)\n- Rfam([14.10](https://ftp.ebi.ac.uk/pub/databases/Rfam/14.10/)): [CC0](https://github.com/moshi4/pybarrnap/blob/main/src/pybarrnap/db/LICENSE.Rfam)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoshi4%2Fpybarrnap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoshi4%2Fpybarrnap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoshi4%2Fpybarrnap/lists"}