PrimeDesign is a software tool for the flexible and comprehensive design of prime editing. PrimeDesign is an edit-centric design tool for the installation of substitution, insertion, and deletion edits, and is generalizable for both single and combinatorial edits. Taking a single input that encodes both the reference and edit sequence, PrimeDesign enumerates all possible pegRNA protospacers, pegRNA extensions, and ngRNAs within set parameter ranges to install the desired edit(s).
With Docker, no installation is required - the only dependence is Docker itself. Users will not need to deal with installation and configuration issues.
Docker can be downloaded freely here: https://store.docker.com/search?offering=community&type=edition
Following the installation of Docker, simply execute the following command in the terminal for a local version of PrimeDesign:
docker pull pinellolab/primedesign
Run the PrimeDesign web application locally with the command:
docker run -p 9994:9994 pinellolab/primedesign:latest primedesign_webapp
After execution of the command, the user will have a local instance of the website accessible at the URL: http://localhost:9994
Run the PrimeDesign command line interface (CLI) with the command in the terminal:
docker run -v ${PWD}/:/DATA -w /DATA pinellolab/primedesign primedesign_cli [options]
Users can specify the following options:
-f, --file
Input file (.txt or .csv) with sequences for PrimeDesign. Format: target_name,target_sequence (column names required)
-pbs, --pbs_length_list
List of primer binding site (PBS) lengths for the pegRNA extension (Default: 10 to 15 nt). Example: 12 13 14 15
-rtt, --rtt_length_list
List of reverse transcription (RT) template lengths for the pegRNA extension (Default: 10 to 30 nt). Example: 10 15 20
-nick_dist_min, --nicking_distance_minimum
Minimum nicking distance for designing ngRNAs upstream and downstream of a pegRNA (Default: 0 bp).
-nick_dist_max, --nicking_distance_maximum
Maximum nicking distance for designing ngRNAs upstream and downstream of a pegRNA (Default: 100 bp).
-filter_c1, --filter_c1_extension
Option to filter against pegRNA extensions that start with a C base.
-silent_mut, --silent_mutation
Introduce silent mutation into PAM assuming sequence is in-frame. Currently only available with SpCas9.
-genome_wide, --genome_wide_design
Whether or not this is a genome-wide pooled design. This option designs a set of pegRNAs per input without ranging PBS and RTT parameters.
-sat_mut, --saturation_mutagenesis
Saturation mutagenesis design with prime editing. The 'aa' option makes amino acid changes and the 'base' option makes DNA base changes. (Options: aa, base)
-n_pegrnas, --number_of_pegrnas
The maximum number of pegRNAs to design for each input sequence. The pegRNAs are ranked by 1) PAM disrupted > PAM intact then 2) distance to edit. (Default: 3)
n_ngrnas, --number_of_ngrnas
The maximum number of ngRNAs to design for each input sequence. The ngRNAs are ranked by 1) PE3b-seed > PE3b-nonseed > PE3 then 2) deviation from nicking_distance_pooled. (Default: 3)
-nick_dist_pooled, --nicking_distance_pooled
The nicking distance between pegRNAs and ngRNAs for pooled designs. PE3b annotation is priority (PE3b seed -> PE3b non-seed), followed by nicking distance closest to this parameter. (Default: 75 bp)
-homology_downstream, --homology_downstream
For pooled designs (genome_wide or saturation_mutagenesis needs to be indicated), this parameter determines the RT extension length downstream of an edit for pegRNA designs. (Default: 10)
-pbs_pooled, --pbs_length_pooled
The PBS length to design pegRNAs for pooled design applications. (Default: 14 nt)
rtt_pooled, --rtt_max_length_pooled
The maximum RTT length to design pegRNAs for pooled design applications. (Default: 50 nt)
-out, --out_dir
Name of output directory. (Default: ./DATETIMESTAMP_PrimeDesign)
PrimeDesign takes in a single input sequence to design pegRNAs and ngRNAs for prime editing. The input sequence encodes both the reference and edited sequence with the following formatting:
- Substitution: (reference/edit)
- Insertion: ( insertion) or (/insertion)
- Deletion: (-deletion) or (deletion/)
Reference sequence: GCCTGTGACTAACTGCGCCAAAACGTCTTCCAATCCCCTTATCCAATTTA
Substitution edit sequence: GCCTGTGACTAACTGCGCCAAAACGACTTCCAATCCCCTTATCCAATTTA
PrimeDesign input sequence: GCCTGTGACTAACTGCGCCAAAACG(T/A)CTTCCAATCCCCTTATCCAATTTA
Insertion edit sequence: GCCTGTGACTAACTGCGCCAAAACGTCTTCTTCCAATCCCCTTATCCAATTTA
PrimeDesign input sequence: GCCTGTGACTAACTGCGCCAAAACGT( CTT)CTTCCAATCCCCTTATCCAATTTA
Deletion edit sequence: GCCTGTGACTAACTGCGCCAAAAC----TCCAATCCCCTTATCCAATTTA
PrimeDesign input sequence: GCCTGTGACTAACTGCGCCAAAAC(-GTCT)TCCAATCCCCTTATCCAATTTA
Combinatorial edit sequence: GCCTGTGACTAACTGCTCCAATCGAAACGTC----AATCCCCTTATCCAATTTA
PrimeDesign input sequence: GCCTGTGACTAACTGC(G/T)CCA( ATCG)AAACGTC(-TTCC)AATCCCCTTATCCAATTTA