https://github.com/open2c/distiller-nf
A modular Hi-C mapping pipeline
https://github.com/open2c/distiller-nf
hi-c nextflow pipeline
Last synced: 11 months ago
JSON representation
A modular Hi-C mapping pipeline
- Host: GitHub
- URL: https://github.com/open2c/distiller-nf
- Owner: open2c
- License: mit
- Created: 2017-04-25T04:12:15.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2024-12-05T22:13:30.000Z (over 1 year ago)
- Last Synced: 2025-04-24T01:13:55.185Z (about 1 year ago)
- Topics: hi-c, nextflow, pipeline
- Language: Groovy
- Homepage:
- Size: 1.33 MB
- Stars: 93
- Watchers: 9
- Forks: 25
- Open Issues: 67
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.md
- License: LICENSE
Awesome Lists containing this project
README
# distiller-nf
[](https://travis-ci.org/open2c/distiller-nf)
[](https://gitter.im/mirnylab/distiller?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[](https://zenodo.org/badge/latestdoi/89316568)
## A modular Hi-C mapping pipeline for reproducible data analysis.
The `distiller` pipeline aims to provide the following functionality:
- Align the sequences of Hi-C molecules to the reference genome
- Parse .sam alignment and form files with Hi-C pairs
- Filter PCR duplicates
- Aggregate pairs into binned matrices of Hi-C interactions
### Installation
Requirements:
- java 8
- [nextflow](https://www.nextflow.io/) version 22.10.x or earlier
- singularity or docker (the latter should be able to run w/o root privileges,
[tutorial](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04))
To setup a new project, execute the following line in the project folder:
```sh
$ nextflow clone open2c/distiller-nf ./
```
This will download the distiller pipeline and the configuration files.
Then:
- configure the location of the input files and other project details
in `project.yml`
- configure additional parameters in `nextflow.config`
- use provided hardware configurations using `local` and `cluster` profiles, or provide your own using `custom` profile
Launch distiller depending on your usage scenario:
1. default hardware settings `./configs/local.config` with your `project.yml`:
```sh
$ nextflow run distiller.nf -params-file project.yml
```
2. `cluster` hardware profile `./configs/cluster.config` with your `project.yml`:
```sh
$ nextflow run distiller.nf -params-file project.yml -profile cluster
```
3. `custom` hardware profile with your own configuration file and your `project.yml`:
```sh
$ nextflow run distiller.nf -params-file project.yml -profile custom --custom_config /full/path/to/your.config
```
### Test example
In a new project folder, execute:
```sh
$ nextflow clone mirnylab/distiller-nf ./
$ bash ./test/setup_test.sh
$ nextflow distiller.nf -params-file ./test/test_project.yml
```
### Nextflow and DSL version note
Distiller was originally designed for DSL1 syntax of nextflow.
Nextflow [stopped supporting DSL1 with 23.X.X update](https://github.com/nextflow-io/nextflow/issues/3915).
We recommend fixing the nextflow version:
```sh
conda install -c bioconda "nextflow==22.10"
```
Distiller has been recently re-implemented in DSL2: https://github.com/open2c/distiller-nf/tree/distiller_dsl2.
DSL2 version is still the beta version under testing.