In silicomulti-antigen sequence typing for Neisseria gonorrhoeae (NG-MAST) and
_Neisseria gonorrhoeae_ sequence typing for antimicrobial resistance (NG-STAR).
# TODO how to integrate mlst dependency
pip3 install ngmaster
Brew
# TODO how to integrate mlst dependency
brew install brewsci/bio/ngmaster
Conda
conda install -c bioconda ngmaster
Test
Once installed, you can run the following to ensure ngmaster is successfully working:
ngmaster --test
If everything works, you will see the following:
Running ngmaster.py on test example (NG-MAST 4186 / NG-STAR 231) ...
FILE SCHEME NG-MAST/NG-STAR porB_NG-MAST tbpB penA mtrR porB_NG-STAR ponA gyrA parC 23S
test.fa ngmaSTar 4186/231 2569 241 23 42 100 100 10 2 100
... Test successful.
Usage
ngmaster -h
usage:
ngmaster [OPTIONS] <fasta1> <fasta2> <fasta3> ... <fastaN>
In silico multi-antigen sequence typing for Neisseria gonorrhoeae (NG-MAST)
and Neisseria gonorrhoeae Sequence Typing for Antimicrobial Resistance (NG-STAR)
Please cite as:
Kwong JC, Goncalves da Silva A, Howden BP and Seemann T.
NGMASTER: in silico multi-antigen sequence typing for Neisseria gonorrhoeae (NG-MAST)
GitHub: https://github.com/MDU-PHL/ngmaster
positional arguments:
FASTA input FASTA files eg. fasta1, fasta2, fasta3 ... fastaN
optional arguments:
-h, --help show this help message and exit
--db DB specify custom directory containing allele databases
directory must contain database sequence files (.tfa) and allele profile files (ngmast.txt / ngstar.txt)
in mlst format (see <https://github.com/tseemann/mlst#adding-a-new-scheme>)
--csv output comma-separated format (CSV) rather than tab-separated
--printseq FILE specify filename to save allele sequences to
--minid MINID DNA percent identity of full allele to consider 'similar' [~]
--mincov MINCOV DNA percent coverage to report partial allele at [?]
--updatedb update NG-MAST and NG-STAR allele databases from <https://rest.pubmlst.org/db/pubmlst_neisseria_seqdef>
--assumeyes assume you are certain you wish to update db
--test run test example
--comments include NG-STAR comments for each allele in output
--version show program's version number and exit
Quick start
To perform in silico NG-MAST and NG-STAR typing on FASTA files:
To update the allele databases from PubMLST: Warning: This will overwrite the existing databases so ensure you back them up if you wish to keep them.
$ ngmaster.py --updatedb
A copy of the old database is saved just in case, but is overwritten with each subsequent --updatedb.
To update the allele databases into a different folder (ie. not the /db folder in the ngmaster directory):
$ ngmaster.py --updatedb --db path/to/folder
This will download the database files into the folder path/to/folder.
This can then be specified when running ngmaster using the --db path/to/folder option.
Creating a custom allele database
To create a custom allele database please follow the instructions for creating a custom mlst database
described here.
Usually, this should not be necessary, simply run ngmaster --update to update to the latest NG-MAST and NG-STAR schemes from PubMLST.
Citation
Kwong JC, Gonçalves da Silva A, Dyet K, Williamson DA, Stinear TP, Howden BP and Seemann T. NGMASTER: in silico multi-antigen sequence typing for Neisseria gonorrhoeaeMicrobial Genomics
2016 Aug 25;2(8):e000076.
PMID:28348871
DOI:10.1099/mgen.0.000076
This will automatically commit and tag the commit with the new version number.
It will also update the necessary location in the file.
Pushing to pypi
Must be uploaded to maintainer’s account.
bumpversion --new-version <new.version.number> <patch|minor|major>
git push
# create distribution
python3 setup.py sdist bdist_wheel
# run some checkes
twine check dist/*
# upload to test pypi to see if everything works
twine upload --repository-url https://test.pypi.org/legacy/ dist/*
# upload to pypi
twine upload dist/*
ngmaster
In silico multi-antigen sequence typing for Neisseria gonorrhoeae (NG-MAST) and _Neisseria gonorrhoeae_ sequence typing for antimicrobial resistance (NG-STAR).
Synopsis
Dependencies
Installation
PiPy
Brew
Conda
Test
Once installed, you can run the following to ensure
ngmasteris successfully working:If everything works, you will see the following:
Usage
Quick start
To perform in silico NG-MAST and NG-STAR typing on FASTA files:
$ ngmaster <fasta1> <fasta2> <fasta3> ... <fastaN>The NG-MAST and NG-STAR results and allele numbers are printed in tab-separated format to
stdout.ngmasterreports alleles according to the same rules that are implemented inmlst.mlst‘s arguments--minidand--mincovare available directly inngmastern~n--minidn?--mincov--minid---mincov--minidn,mTo save results to a tab-separated text file, redirect
stdout:$ ngmaster <fasta1> <fasta2> <fasta3> ... <fastaN> > results.txtTo display results in comma-separated format, use the
--csvoption:$ ngmaster --csv <fasta1> <fasta2> <fasta3> ... <fastaN>To save sequences of the alleles to a file (eg. for uploading “new” sequences to PubMLST):
$ ngmaster --printseq [filename] <fasta1> <fasta2> <fasta3> ... <fastaN>This will create two files:
NGMAST__filenameNGSTAR__filenameUpdating the allele databases
To update the allele databases from PubMLST:
Warning: This will overwrite the existing databases so ensure you back them up if you wish to keep them.
A copy of the old database is saved just in case, but is overwritten with each subsequent
--updatedb.To update the allele databases into a different folder (ie. not the /db folder in the ngmaster directory):
This will download the database files into the folder
path/to/folder. This can then be specified when running ngmaster using the--db path/to/folderoption.Creating a custom allele database
To create a custom allele database please follow the instructions for creating a custom
mlstdatabase described here. Usually, this should not be necessary, simply runngmaster --updateto update to the latest NG-MAST and NG-STAR schemes from PubMLST.Citation
Kwong JC, Gonçalves da Silva A, Dyet K, Williamson DA, Stinear TP, Howden BP and Seemann T.
NGMASTER: in silico multi-antigen sequence typing for Neisseria gonorrhoeae Microbial Genomics 2016 Aug 25;2(8):e000076. PMID:28348871 DOI:10.1099/mgen.0.000076
Bugs
Please submit via the GitHub issues page.
Software Licence
GPLv2
References
Authors
Development
When incrementing version (i.e., minor patch), run the following:
The same can be done for
minorandmajornumbers.This will automatically commit and tag the commit with the new version number. It will also update the necessary location in the file.
Pushing to pypi
Must be uploaded to maintainer’s account.