Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.2%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

GFF toolkit

Basic Info
Statistics
  • Stars: 10
  • Watchers: 1
  • Forks: 2
  • Open Issues: 1
  • Releases: 10
Created about 4 years ago · Last pushed 8 months ago
Metadata Files
Readme Changelog Contributing License Citation

README.md

Latest Github release Conda Code style: black Tests codecov

GFFtk: genome annotation tool kit

GFFtk is a comprehensive toolkit for working with genome annotation files in GFF3, GTF, and TBL formats. It provides powerful conversion, filtering, and manipulation capabilities for genomic data.

Features

  • Format Conversion: Convert between GFF3, GTF, TBL, and GenBank formats
  • Combined GFF3+FASTA: Support for combined files containing both annotations and sequences
  • Sequence Extraction: Extract protein and transcript sequences from annotations
  • Advanced Filtering: Filter annotations using flexible regex patterns
  • Consensus Models: Generate consensus gene models from multiple sources
  • Non-Standard Features: Support for intron, noncodingexon, fiveprimeUTRintron, and pseudogenic_exon features
  • File Manipulation: Sort, sanitize, and rename features in annotation files

Installation

To install release versions use the pip package manager: bash python -m pip install gfftk

To install the most updated code in master you can run: bash python -m pip install git+https://github.com/nextgenusfs/gfftk.git

Quick Start

Basic Format Conversion

```bash

Convert GFF3 to GTF

gfftk convert -i input.gff3 -f genome.fasta -o output.gtf

Extract protein sequences

gfftk convert -i input.gff3 -f genome.fasta -o proteins.faa --output-format proteins ```

Combined GFF3+FASTA Format

```bash

Create a combined file from separate GFF3 and FASTA files

gfftk convert -i input.gff3 -f genome.fasta -o combined.gff --output-format combined

Read a combined file (no separate FASTA file needed)

gfftk convert -i combined.gff -o output.gff3 --output-format gff3 ```

Advanced Filtering

```bash

Keep only kinase genes

gfftk convert -i input.gff3 -f genome.fasta -o kinases.gff3 --grep product:kinase

Remove augustus predictions

gfftk convert -i input.gff3 -f genome.fasta -o filtered.gff3 --grepv source:augustus

Case-insensitive filtering with regex

gfftk convert -i input.gff3 -f genome.fasta -o results.gff3 --grep product:KINASE:i

Combined filtering

gfftk convert -i input.gff3 -f genome.fasta -o filtered.gff3 \ --grep product:kinase --grepv source:augustus ```

Filter Pattern Syntax

  • key:pattern - Basic string matching
  • key:pattern:i - Case-insensitive matching
  • key:regex - Regular expression patterns
  • Multiple --grep or --grepv flags for complex filtering

Common filter keys: product, source, name, note, contig, strand, type, db_xref, go_terms

For more examples and detailed documentation, see the tutorial.

Development

Code Formatting

This project uses pre-commit to ensure code quality and consistency. The pre-commit hooks run Black (code formatter), isort (import sorter), and flake8 (linter).

To set up pre-commit:

  1. Install pre-commit:

bash pip install pre-commit

  1. Install the git hooks:

bash pre-commit install

  1. (Optional) Run against all files:

bash pre-commit run --all-files

After installation, the pre-commit hooks will run automatically on each commit to ensure your code follows the project's style guidelines.

Owner

  • Name: Jon Palmer
  • Login: nextgenusfs
  • Kind: user
  • Location: Palo Alto, CA

Citation (CITATION.cff)

cff-version: 1.2.0
title: 'GFFtk: genome annotation tool kit'
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - family-names: Palmer
    given-names: Jonathan Mark
    email: nextgenusfs@gmail.com
    orcid: 'https://orcid.org/0000-0003-0929-3658'
    affiliation: Independent Researcher
repository-code: 'https://github.com/nextgenusfs/gfftk'
keywords:
  - annotation
  - genome
  - gff3
  - gtf
  - consensus
  - gene model
license: BSD-2-Clause
version: 24.10.30
date-released: '2024-11-03'

GitHub Events

Total
  • Create event: 4
  • Issues event: 7
  • Release event: 2
  • Watch event: 3
  • Issue comment event: 12
  • Push event: 35
  • Pull request event: 2
  • Fork event: 1
Last Year
  • Create event: 4
  • Issues event: 7
  • Release event: 2
  • Watch event: 3
  • Issue comment event: 12
  • Push event: 35
  • Pull request event: 2
  • Fork event: 1

Committers

Last synced: about 3 years ago

All Time
  • Total Commits: 27
  • Total Committers: 2
  • Avg Commits per committer: 13.5
  • Development Distribution Score (DDS): 0.481
Top Committers
Name Email Commits
Jon Palmer n****s@g****m 14
Jon Palmer n****s@g****m 13

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 5
  • Total pull requests: 2
  • Average time to close issues: 6 months
  • Average time to close pull requests: about 3 hours
  • Total issue authors: 4
  • Total pull request authors: 2
  • Average comments per issue: 5.6
  • Average comments per pull request: 0.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 2
  • Pull requests: 1
  • Average time to close issues: about 20 hours
  • Average time to close pull requests: about 6 hours
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 4.5
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • olekto (2)
  • nextgenusfs (1)
  • stachyris (1)
  • marcinschmidt (1)
  • simone-says (1)
Pull Request Authors
  • olekto (2)
  • nextgenusfs (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 397 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 10
  • Total maintainers: 1
pypi.org: gfftk

GFFtk: genome annotation GFF3 tool kit

  • Homepage: https://github.com/nextgenusfs/gfftk
  • Documentation: https://gfftk.readthedocs.io/
  • License: BSD 2-Clause License Copyright (c) 2016, Jonathan M. Palmer All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  • Latest release: 25.6.10
    published 10 months ago
  • Versions: 10
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 397 Last month
Rankings
Dependent packages count: 6.6%
Average: 24.5%
Stargazers count: 25.5%
Downloads: 29.3%
Forks count: 30.5%
Dependent repos count: 30.6%
Maintainers (1)
Last synced: 8 months ago

Dependencies

.github/workflows/release.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
  • pypa/gh-action-pypi-publish 27b31702a0e7fc50959f5ad993c78deac1bdfc29 composite
docs/requirements.txt pypi
  • gfftk *
  • sphinx_rtd_theme *
setup.py pypi