[ANN] Nucleotide_Essentials.jl - Support for some basic first steps in analyzing Illumina sequencing data!

I just finished up throwing together some useful commands for working with Illumina sequencing data and thought it could be useful for others as well!

Nucleotide_Essentials.jl is a collection of tools for working with Illumina next-generation sequencing reads currently under development and testing.


Active development is still underway but the most current version can be downloaded from the REPL using:

The package is registered in the General registry and so can be installed at the REPL with:

] add Nucleotide_Essentials

Current Functions:

  • readFastq - Import a .fastq file into Julia
  • readFasta - Import a .fasta file into Julia
  • writeFasta - Write a .fasta or .fasta.gz to file
  • FilterQuality_se - Filter single-ended Illumina reads
  • FilterQuality_pe - Filter paired-end Illumina reads
  • FastqtoFasta - Convert a .fastq file or FastqRecord to a FastaRecord
  • potential_mismatches - Create a list of potential mismatch barcodes (mutations + deletions)
  • demultiplex_se - Demultiplex single-end Illumina reads
  • demultiplex_pe - Demultiplex paired-end Illumina reads
  • PlotQuality - Visualize quality of .fastq file

For bug fixes, new features, and future suggestions, open an issue!

Full documentation can be found at here


This looks fine but you probably want to have a look at FASTX.jl and the whole BioJulia stack.

Nice. Can you summarize how it is different from BioSequences.jl, FASTX.jl?

Hey @patrickhorve
Nice to see some bioinformaticians picking up Julia! Have a look at the stuff we’ve built with BioJulia - we’ve attempted to build it generically enough that other users can build on top of it, using the types and interfaces of BioJulia, rather than re-inventing stuff. You’re welcome to ping us or come say hi on Julia’s Slack.

If there is any functionality you think is missing in FASTX.jl, please make an issue on the repository.