#crispr #bioinformatics #sequencing #cas12

app casmap

A way to count and characterize constructs for cas12 6-plex CRISPR screens

4 releases

0.1.3 Oct 13, 2022
0.1.2 Oct 12, 2022
0.1.1 Oct 8, 2022
0.1.0 Oct 8, 2022

#6 in #crispr

MIT license

38KB
1K SLoC

casmap

Mapping sgRNA counts for cas12 6-plex CRISPR screens

Installation

How to install cargo

# from crates.io
cargo install casmap

# from github
git clone https://github.com/noamteyssier/casmap
cd casmap
cargo install --path .

Inputs

This requires 2 fastqs - an R1 and a R2. These can be gzipped or plaintext.

This will also require a spacer table which is a 3 column tab-delim table. The columns represent [sequence, construct_id, ordering]. The construct id and the ordering currently must be numeric.

Spacer Table

ATGACGAGCTGAGAGCAAGAGCG	0	0
GAAGTCGGGTGGGCGGGGTCATT	0	1
CGCCGCTTCTACATAGTATCGTT	0	2
GAGTTCTGTCCCTCTGCACTTGC	0	3
TTATGAATCTAATGCCCGTCGGA	0	4
TTTAGCTTCGCCTTCGGGATTCA	0	5
GGAGCGAAGTAAACCCGTTGCGA	1	0
TGCAATCACCGCGCTGAGAAATG	1	1
AATGAGCATAAAAGCGATTTAAA	1	2
CATCTGCTCGACTAGTCGGTAAA	1	3
ATCCACGCTGTATACTAAAATTG	1	4
CGCGCACATCATGGTGCTTATCC	1	5

Constant Table

This will also require a constants table representing the static regions between the variable spacers. It is a two column tab-delim table representing [sequence, ordering]. Currently the ordering must be numeric.

TACCGTTCACATCGATTTT	0
CGGCCCCATGTGCAAGTAT	1
AAAGAGGCAATTGGTCAAA	2
ATTACAGCCGCAACAGGTC	3
GTGCCCGGTTTAGGTTAAT	4
TGCGAATTTTTGGCTGATC	5

Dummy Data

To have some dummy data to test the interface you can use my sequence simulator: casgen

# install
cargo install casgen

# run
casgen

Usage

Construct Counting

This will map constructs with exact matching on both the spacers and constant regions.

casmap constructs \
  -i casgen_R1.fastq \
  -I casgen_R2.fastq \
  -s casgen_spacers.tsv \
  -c casgen_constants.tsv

Spacer Characterization

This will write which spacers each read maps against and the number of of each spacer mapped.

casmap spacers \
  -i casgen_R1.fastq \
  -I casgen_R2.fastq \
  -s casgen_spacers.tsv

Tuple Counting

This will map constructs by matching spacer tuples and ignoring constant regions. It will also allow unambiguous one-off mismatches when mapping spacers.

casmap tuples \
  -i casgen_R1.fastq \
  -I casgen_R2.fastq \
  -s casgen_spacers.tsv 

Describe

This will map the spacers and direct repeats foun for each one of the reads and report back a tab-separated value table for each read.

casmap describe \
  -i casgen_R1.fastq \
  -I casgen_R2.fastq \
  -s casgen_spacers.tsv \
  -c casgen_constants.tsv

Dependencies

~7–18MB
~199K SLoC