https://github.com/bactopia/nf-bactopia
A Nextflow plugin for Bactopia
https://github.com/bactopia/nf-bactopia
Last synced: 3 months ago
JSON representation
A Nextflow plugin for Bactopia
- Host: GitHub
- URL: https://github.com/bactopia/nf-bactopia
- Owner: bactopia
- License: apache-2.0
- Created: 2025-04-18T20:25:56.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2026-03-30T01:14:34.000Z (3 months ago)
- Last Synced: 2026-03-30T04:53:09.602Z (3 months ago)
- Language: Groovy
- Size: 420 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: COPYING
Awesome Lists containing this project
README
# nf-bactopia
[](https://github.com/bactopia/nf-bactopia/actions)
[](https://codecov.io/gh/bactopia/nf-bactopia)
[](https://opensource.org/licenses/MIT)
A Nextflow plugin for specifically for usage with [Bactopia](https://bactopia.github.io/). It
based of the modified [nf-core libs](https://github.com/bactopia/bactopia/tree/4b075af96da522222bb075d4b65927d1ba3de9c2/lib)
and the [nf-schema plugin](https://github.com/nextflow-io/nf-schema).
This plugin will replicate the functionality of the previous libraries, while being compatible
with future releases of Nextflow (>= 25).
Again, while you are free to do what you want, this plugin is specifically designed for Bactopia
and will likely not work with other pipelines.
## Setting up a Development Environment
### Clone the repository
```{bash}
git clone git@github.com:bactopia/nf-bactopia.git
cd nf-bactopia
```
### Create a new conda environment
```{bash}
conda create -y -n nf-bactopia \
-c conda-forge \
-c bioconda \
make \
'nextflow>=25'
conda activate nf-bactopia
```
### Build the plugin and install
```{bash}
make assemble
make install
```
### Use the plugin
The `make install` should put the plugin in your `~/.nextflow/plugins` directory. So it should
just work!
```{bash}
NXF_VER=25.06.0-edge nextflow run ...
```
## Testing
This plugin has comprehensive test coverage with 230 unit tests covering 61.6% of the codebase.
### Run tests
```bash
# Run all unit tests
./gradlew test
# Run tests with coverage report
./gradlew test jacocoTestReport
# View coverage report
open build/reports/jacoco/test/html/index.html
```
### Coverage metrics
- **Instruction Coverage**: 61.6% (11,636 / 18,884 instructions)
- **Method Coverage**: 65.4%
- **Class Coverage**: 70.0%
- **Total Tests**: 230 (all passing ✓)
See [docs/TESTING.md](docs/TESTING.md) for detailed testing documentation.