Padlock probes for miRNA detection, glowing on cue
From a target miRNA to ranked, sequence-validated probes for RCA and CRISPR-Cas12a fluorescence readout.
Five steps, one command
Each step is a module in the padlock_design package — run the full chain from the GUI or the CLI.
Sequence pools
Generate and pre-filter spacer and Cas12a-core candidates by length, GC, and Tm.
Assemble & filter
Build 5′arm · spacer · core · short spacer · 3′arm, then enforce structure rules.
Stability
Nearest-neighbor Tm / ΔG plus RNAfold & RNAcofold from ViennaRNA.
Specificity
NCBI BLAST screen for contiguous and 3′-end matches against the transcriptome.
Export
Ranked candidates with full metrics written to a timestamped Excel report.
Why the candidates hold up
Every probe passes the same thermodynamic and structural checks the wet lab would demand.
Structure filtering
Rejects long homopolymers, GC blocks, self-complementarity, and cross-hybridization so probes fold cleanly. filters.py
Cas12a-aware cores
Core sequences avoid PAM-like motifs and hold a balanced base window for reliable collateral cleavage. cas12a_filter
Thermodynamic scoring
Tm and folding ΔG under RCA salt conditions via Biopython and ViennaRNA DNA parameters. thermo.py
Off-target BLAST
Web BLAST flags contiguous runs and 3′-end homology, then sorts RNA vs genomic hits. run_blast_validation
Up and running in three lines
The Streamlit GUI is the recommended way in; the CLI is there for batch runs.
1 · Clone & install
shellgit clone https://github.com/BKoo-Codes/PadDx_miR.git
cd PadDx_miR
pip install -r requirements.txt
2 · Launch the GUI
recommendedstreamlit run app.py
Or run headless from the CLI
batchpython main.py --target_name "hsa-miR-21-5p" \
--target_seq "UAGCUUAUCAGACUGAUGUUGA" \
--num_candidates 10 \
--output "results/my_design.xlsx"