Note: This is a refactored version of the original project by Nirajan2005. This version by 06navdeep06 includes alot of code improvements and bug fixes while maintaining the original functionality.
A comprehensive simulation tool for CRISPR-Cas9 gene editing experiments, now with a modular and maintainable codebase.
- Interactive Web Interface: Built with Streamlit for an intuitive user experience
- Multiple Cas Variants: Supports SpCas9, SaCas9, Cpf1, and custom PAM sequences
- Realistic Simulation: Models NHEJ and HDR repair pathways
- Delivery Modeling: Simulates different delivery methods and their efficiencies
- Chromatin Context: Accounts for chromatin accessibility and histone modifications
- Visualization: Interactive visualization of editing results
CRISPRcas9_simV3/
├── app.py # Main application entry point
├── config.py # Configuration and constants
├── models/ # Data models and core logic
│ ├── __init__.py
│ ├── cas9.py # Cas9 class and target finding
│ ├── scoring.py # On/off-target scoring
│ └── simulation.py # Delivery and editing simulation
├── utils/ # Utility functions
│ ├── __init__.py
│ ├── sequence_utils.py # Sequence manipulation
│ └── visualization.py # Plotting and visualization
└── requirements.txt # Dependencies
-
Clone the repository:
git clone https://github.com/yourusername/CRISPRcas9_simV3.git cd CRISPRcas9_simV3 -
Create and activate a virtual environment (recommended):
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Run the Streamlit application:
streamlit run app.py
-
Open your web browser and navigate to the URL shown in the terminal (usually http://localhost:8501)
-
Use the sidebar to:
- Input or upload a DNA sequence
- Configure guide RNA and PAM settings
- Set experimental parameters
- Run the simulation
- Python 3.8+
- Streamlit
- Biopython
- dna-features-viewer
- Matplotlib
- NumPy
MIT License - see LICENSE for details.