Skip to content

Gtars command line interface (CLI)

We've packaged some gtars functionality into a command line interface (CLI) for easy use in shell scripts and terminal environments. The CLI provides access to various genomic tools and utilities built on top of the core gtars Rust library.

Installation

To facilitate fast compilation and broad compatibility, the CLI is feature-gated. You can enable only the tools you need to minimize dependencies, binary size, and build time.

There are two main ways to install the gtars CLI:

Via Cargo (Rust's package manager)

cargo install gtars-cli --features "uniwig overlaprs igd bbcache scoring fragsplit"

From source

git clone https://github.com/databio/gtars.git
cd gtars
cargo install --path gtars-cli --features "uniwig overlaprs igd bbcache scoring fragsplit"

You can also enable all features with:

cargo install gtars-cli --all-features

Available Commands

The CLI provides the following subcommands (availability depends on features enabled during compilation):

igd

Build and query IGD (Integrated Genome Database) indexes:

gtars igd create --input regions.bed --output index.igd
gtars igd query --database index.igd --query chr1:1000-2000

overlaprs

Compute overlaps between genomic intervals:

gtars overlaprs --input1 regions1.bed --input2 regions2.bed

uniwig

Generate coverage tracks from BED/BAM files:

gtars uniwig --input reads.bam --output coverage.bw

bbcache

Cache and manage BED files from bedbase.org:

gtars bbcache get --id GSM123456
gtars bbcache list

scoring

Score fragment overlaps against a reference:

gtars scoring --fragments frags.tsv.gz --universe peaks.bed --output scores.txt

fragsplit

Split fragment files by cell barcodes or clusters:

gtars fragsplit --fragments frags.tsv.gz --barcodes clusters.csv --output-dir splits/

Global Options

gtars --help              # Show help
gtars --version           # Show version
gtars <command> --help    # Show command-specific help

Building with Specific Features

To build the CLI with specific tools:

cargo build --release --features "uniwig,overlaprs,igd"