crisprzip-tool
A GUI for making CRISPR activity predictions with the CRISPRzip model
Science Score: 57.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.9%) to scientific vocabulary
Repository
A GUI for making CRISPR activity predictions with the CRISPRzip model
Basic Info
- Host: GitHub
- Owner: hiddeoff
- License: mit
- Language: Python
- Default Branch: main
- Size: 4.5 MB
Statistics
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 3
- Releases: 0
Metadata Files
README.md
CRISPRzip tool
Welcome to the codebase of the CRISPRzip tool from the Depken Lab at TU Delft.

About the project
The CRISPRzip model
CRISPRzip is a physics-based model to study the target recognition dynamics of CRISPR-associated nucleases like Cas9 (Eslami-Mossalam, 2022). Their interactions with target DNA is represented as an energy landscape, with which you can simulate binding and cleavage kinetics. The parameters have been obtained by machine learning on high-throughput data. CRISPRzip makes quantitative predictions of on-target efficiency and off-target risks of different guide RNAs. With CRISPRzip, we hope to contribute to assessing the risks that come with particular choices in CRISPR application, and as such contribute to the development of safe gene editing technology.
The tool
With the CRISPRzip tool/GUI, you can apply CRISRPzip to the sequences of your interest without having to do any programming. It's a matter of installing the right executable for your computer (Windows/Mac/Linux) and launching it.
The CRISPRzip tool is powered by NiceGUI and PyInstaller.
The Python package
If you are familiar with Python and would like to work with the source code: good news! It's available as a public GitHub project and as Python package on PyPi.
References
Eslami-Mossallam B et al. (2022) A kinetic model predicts SpCas9 activity, improves off-target classification, and reveals the physical basis of targeting fidelity. Nature Communications. 10.1038/s41467-022-28994-2
Usage
You can download the latest version of the CRISPRzip tool from the Releases page. Download and follow the user instructions below.
Available platforms
| Platform and file | |---------------| | CRISPRzip tool for Windows | | CRISPRzip tool for macOS | | CRISPRzip tool for Linux |
User instructions
Windows
1. Download the Windows file an unzip it. You should see a file named `CRISPRzip.exe`. 2. Double-click on the `CRISPRzip.exe` file. 3. You might see a warning saying "Windows protected your PC". If so, click on "More info" indicated by the arrow in the image below:
This message is expected. Windows displays this warning for applications that are not distributed through the Microsoft Store or are not signed with a recognized code signing certificate. Obtaining such a certificate typically requires an annual fee paid to a certificate authority. This does not indicate a problem with the application itself, but is a standard part of Microsoft’s security measures for software from outside the Microsoft Store or unsigned applications.
4. To proceed, click on "Run anyway" indicated by the arrow in the image below:
macOS
1. Download the macOS file an unzip it. You should see a file named `CRISPRzip.app`. *Note: The file extension may not be visible if your system is set to hide extensions.* 2. Double-click on the `CRISPRzip.app` file. You will see a message like this:
This message is expected. Apple displays this warning for applications that are not distributed through the Mac App Store or not notarized by their developer program. Notarization requires an annual developer fee of 99 EUR. Rest assured, this does not indicate a problem with the application itself, but is a standard part of Apple’s security measures for software from outside the App Store.
3. To proceed, open your "System Settings", go to "Privacy & Security", scroll down, and you will see this message:
click on "Open Anyway".
4. You will be then prompted with this window when opening the CRISPRzip tool:
click on "Open Anyway".
5. Enter your password.
6. CRISPRzip tool will now run as a standard app, and you will not need to repeat these steps for future launches.
Linux
1. Download the Linux file an unzip it. You should see a file named `CRISPRzip`. 2. Double-click on the `CRISPRzip` file. 3. You might see a warning that it is not from a trusted publisher. Allow it to run.Browser NiceGUI application
As an alternative to the downloadable applications, you could clone this repository and launch CRISPRzip tool from the terminal. It will open in your browser. This way to launch the tool is sometimes (a lot) faster than the executables. Follow the developer instructions below.
Developers
To use and develop the GUI, run the following commands:
1. Clone the repository.
bash
git clone https://github.com/hiddeoff/crisprzip-tool.git
2. Navigate to the cloned repository.
3. Create a virtual environment (venv or conda), activate it, and install the required dependencies.
bash
conda create -n crisprzip_gui python=3.12
conda activate crisprzip_gui
pip install -r requirements.txt
4. Run the GUI. It should launch in your browser.
bash
python crisprzip_gui.py
Building the executable
If you want to build the executable for the CRISPRzip tool, you can build it with PyInstaller. From the root of the project directory, run the following command for your platform:
Windows
```bash pyinstaller crisprzip_gui.py ^ --name CRISPRzip ^ --onefile ^ --windowed ^ --add-data "%VENV_PATH%\Lib\site-packages\nicegui\static;nicegui/static" ^ --add-data "%VENV_PATH%\Lib\site-packages\latex2mathml\;latex2mathml" ^ --collect-all nicegui ^ --collect-all crisprzip ^ --collect-all matplotlib ^ --collect-all numpy ^ --collect-all pandas ^ --hidden-import uvicorn.logging ``` - Important: Set `%VENV_PATH%` with the appropriate path to your system!macOS
```bash pyinstaller crisprzip_gui.py \ --name CRISPRzip \ --windowed \ --onedir \ --add-data "/path/to/your/venv/lib/python3.12/site-packages/nicegui:nicegui/static" \ --add-data "/path/to/your/venv/lib/python3.12/site-packages/latex2mathml:latex2mathml" \ --collect-all nicegui \ --collect-all crisprzip \ --collect-all matplotlib \ --collect-all numpy \ --collect-all pandas \ --hidden-import uvicorn.logging ``` - Important: Replace the paths with the correct ones for your system!Linux
```bash pyinstaller crisprzip_gui.py \ --name CRISPRzip \ --windowed \ --onefile \ --add-data "$lib_path/site-packages/nicegui:nicegui/static" \ --add-data "$lib_path/site-packages/latex2mathml:latex2mathml" \ --collect-all nicegui \ --collect-all crisprzip \ --collect-all matplotlib \ --collect-all numpy \ --collect-all pandas \ --collect-all qtpy \ --hidden-import uvicorn.logging \ --hidden-import PySide6.QtWebEngineWidgets \ --exclude-module gi --exclude-module PyGObject --exclude-module gtk ``` - Important: Set the `lib_path` variable with the correct path to your system!These commands will create a dist folder containing the executable and a build folder with the build files. Alternatively, you can run these commands from the bin folder, which contains scripts to build the executable for your platform. Remember to update the paths as needed.
Contributing
If you would like to contribute to this project: that's great! Have a look at our Contributing guidelines and our Code of Conduct.
Acknowledgements
Many thanks to Elviss Dvinskis and Raúl Ortiz from the DCC team at TU Delft for their support to get this GUI released!
Waiver
Technische Universiteit Delft hereby disclaims all copyright interest in the program “CRISPRzip tool” written by the Author(s). Paulien Herder, Dean of Applied Sciences
(c) 2025, Hidde Offerhaus, Delft, The Netherlands.
Owner
- Login: hiddeoff
- Kind: user
- Repositories: 2
- Profile: https://github.com/hiddeoff
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you are using this software, please cite it as shown below." authors: - family-names: "Offerhaus" given-names: "Hidde" title: "CRISPRzip-tool" license: MIT url: "https://github.com/hiddeoff/crisprzip-tool"
GitHub Events
Total
- Issues event: 4
- Watch event: 3
- Issue comment event: 2
- Push event: 12
- Pull request review event: 1
- Pull request event: 10
- Fork event: 1
Last Year
- Issues event: 4
- Watch event: 3
- Issue comment event: 2
- Push event: 12
- Pull request review event: 1
- Pull request event: 10
- Fork event: 1
Dependencies
- crisprzip >=1.1.1
- latex2mathml *
- matplotlib *
- nicegui >=2.17.0
- numpy *
- pandas *