Ngless is a domain-specific language for
NGS (next-generation sequencing data) processing.
For questions and discussions, please use the ngless mailing list.
If you are using NGLess, please cite:
NG-meta-profiler: fast processing of metagenomes using NGLess, a domain-specific language by Luis Pedro Coelho, Renato Alves, Paulo Monteiro, Jaime Huerta-Cepas, Ana Teresa Freitas, Peer Bork, Microbiome (2019) https://doi.org/10.1186/s40168-019-0684-8
ngless "1.0"
input = fastq(['ctrl1.fq','ctrl2.fq','stim1.fq','stim2.fq'])
input = preprocess(input) using |read|:
read = read[5:]
read = substrim(read, min_quality=26)
if len(read) < 31:
discard
mapped = map(input,
reference='hg19')
write(count(mapped, features=['gene']),
ofile='gene_counts.csv',
format={csv})
See the install documentation for more information.
The recommended way to install NGLess is through bioconda:
conda install -c bioconda ngless
Alternatively, a docker container with NGLess is available at docker hub:
docker run -v $PWD:/workdir -w /workdir -it nglesstoolkit/ngless:1.0.0 ngless --version
Adapt the mount flags (-v
) as needed.
You can get a statically linked version of NGless 1.0.0 or a nighly build of the latest development code. This should work across a wide range of Linux versions (please report any issues you encounter):
curl -O https://ngless.embl.de/releases/ngless-1.0.0-Linux64
chmod +x ngless-1.0.0-Linux64
./ngless-1.0.0-Linux64
This download bundles bwa, samtools and megahit (also statically linked).
If you want to try one of ngless' builtin modules (motus, specI, ...) you can download the full nighly build zip file which includes them.
Installing/compiling from source is also possible. Clone https://github.com/ngless-toolkit/ngless
The simplest way to get an environment will all the dependencies is to use conda:
conda create -n ngless
source activate ngless
conda config --add channels conda-forge
conda install stack cairo bzip2 gmp zlib perl wget xz pkg-config make
You should have gcc
installed (or another C-compiler).
The following sequence of commands should download and build the software
git clone https://github.com/ngless-toolkit/ngless
cd ngless
make
To install, you can use the following command (replace <PREFIX>
with
the directory where you wish to install, default is /usr/local
):
make install prefix=<PREFIX>
- Luis Pedro Coelho (email: coelho@embl.de) (on twitter: @luispedrocoelho)
- Paulo Monteiro
- Renato Alves
- Ana Teresa Freitas
- Peer Bork