Skip to content

Repository files navigation

SCARAB

SCARAB recruits metagenomic reads using single-cell amplified genomes as references.

Documentation and tutorials: Wiki

Install

SCARAB is developed and tested on Linux only. A conda distribution is required (Mambaforge, Miniconda, or Anaconda).

Clone the repo:

git clone https://github.com/RyloByte/scarab.git
cd scarab

Create the conda environment and install SCARAB:

make install-scarabenv
conda activate scarab_cenv
make install-scarab

Or without make:

conda env create -f environment.yml
conda activate scarab_cenv
pip install .

Test

Download the demo dataset: https://drive.google.com/file/d/1yUoPpoNRl6-CZHkRoUYDbikBJk4yC-3V/view?usp=sharing

unzip demo.zip
cd demo
scarab recruit -m k12.gold_assembly.fasta -l read_list.txt -o SCARAB_out -s SAG

The result is a new directory named SCARAB_out that contains all intermediate and final outputs.

Containers

Container images are published to Quay.io:

# Docker (needs sudo access)
sudo docker pull quay.io/hallamlab/scarab
sudo docker run -it --network=host --rm -v ./:/cwd quay.io/hallamlab/scarab:latest \
  scarab recruit -m cwd/k12.gold_assembly.fasta -l cwd/docker_read_list.txt -o cwd/SCARAB_out -s cwd/SAG

# Apptainer
apptainer pull docker://quay.io/hallamlab/scarab
apptainer exec scarab_latest.sif scarab recruit -m k12.gold_assembly.fasta -l read_list.txt -o SCARAB_out -s SAG

Build locally:

make docker-build
make apptainer-build

Developer workflow

Local conda build from the working tree (no version bump required):

make conda-build-local
# Faster build (requires boa in the build-tools env)
make conda-mambabuild-local
# Use a different tools env if needed
# BUILD_ENV=build-tools make conda-mambabuild-local
# If you built from a tools env, point to its conda-bld
# CONDA_BLD_PATH="/home/ryan/mambaforge/envs/build-tools/conda-bld" make conda-test-env
# You can override channels if needed
# CONDA_CHANNELS="-c conda-forge -c bioconda" make conda-mambabuild-local
# Use a different tools env if needed
# BUILD_ENV=build-tools make conda-mambabuild-local
make conda-test-env
conda activate scarab_test
scarab info

Release checklist (tagged source build):

# 1) Update version, tag, and push
# 2) Update conda-recipe/meta.yaml source URL + sha256
make conda-build-release

Upload to Anaconda Cloud:

ANACONDA_USER=yourname make conda-upload

Release automation (GitHub Actions):

# Run the release workflow manually from GitHub Actions
# or using the GitHub CLI
# gh workflow run release.yml -f version=0.0.2

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages