8 releases
1.0.0-rc.6 | Aug 30, 2024 |
---|---|
1.0.0-rc.4 | Aug 29, 2024 |
0.1.1 | Sep 2, 2024 |
0.1.0 | Aug 26, 2024 |
#200 in Biology
70KB
1K
SLoC
BarKit
BarKit (Barcodes ToolKit) is a toolkit designed for manipulating FASTQ barcodes.
Installation
From crates.io
Barkit can be installed from crates.io
using cargo
. This can be done with the following command:
cargo install barkit
Build from source
- Clone the repository:
git clone https://github.com/nsyzrantsev/barkit
cd barkit/
- Build:
cargo build --release && sudo mv target/release/barkit /usr/local/bin/
Extract subcommand
The extract subcommand is designed to parse barcode sequences from FASTQ reads using approximate regex matching based on a provided pattern.
All parsed barcode sequences are moved to the read header with base quality, separated by colons:
@SEQ_ID UMI:ATGC:???? CB:ATGC:???? SB:ATGC:????
- UMI: Unique Molecular Identifier (Molecular Barcode)
- CB: Cell Barcode
- SB: Sample Barcode
Examples
Parse the first twelve nucleotides as a UMI from each forward read:
barkit extract -1 <IN_FASTQ1> -2 <IN_FASTQ2> -p "^(?P<UMI>[ATGCN]{12})" -o <OUT_FASTQ1> -O <OUT_FASTQ2>
Parse the first sixteen nucleotides as a cell barcode from each reverse read before the atgccat
adapter sequence:
barkit extract -1 <IN_FASTQ1> -2 <IN_FASTQ2> -P "^(?P<CB>[ATGCN]{16})atgccat" -o <OUT_FASTQ1> -O <OUT_FASTQ2>
[!NOTE] Use lowercase letters for fuzzy match patterns.
Dependencies
~12–21MB
~264K SLoC