Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


We often have to convert sequence files between formats and do little manipulations on them, and it's not worth writing scripts for that. seqmagick is a kickass little utility to expose the file format conversion in BioPython in a convenient way. Instead of having a big mess of scripts, there is one that takes arguments:

seqmagick convert a.fasta b.phy    # convert from fasta to phylip
seqmagick mogrify --ungap a.fasta  # remove all gaps from a.fasta, in place
seqmagick info *.{fasta,sto}       # describe all FASTA and Stockholm
                                   # files in the current directory


  • Python >= 3.5
  • biopython >= 1.78


Use pip:

pip install seqmagick

Note that as of version 0.8.0, this package requires Python 3.5+. If you want to use the most recent version compatible with Python 2.7:

pip install seqmagick==0.6.2


  • Modifying sequences: Remove gaps, reverse complement, reverse, change case,
    • Remove gaps
    • Reverse & reverse complement
    • Trim to a range of residues
    • Change case
    • Sort by length or ID
    • more
  • Displaying information about sequence files
  • Subsetting sequence files by:
    • Position
    • ID
    • Deduplication
    • more
  • Filtering sequences by quality score
  • Trimming alignments to a region of interest defined by the forward and reverse primers

Want to learn more? Head to the Documentation.

seqmagick is free software under the GPL v3.