Accessing the Interface
After running theprotege.py command, the web interface automatically launches and is accessible at:
The interface runs on localhost (127.0.0.1) on port 8050. Make sure this port is not blocked by your firewall.
Technology Stack
The web interface is built using:- Dash: Python framework for building reactive web applications
- Plotly: Interactive graphing library for scientific visualizations
- Plotly Figure Factory: For creating distribution plots
Main Components
The interface consists of several key components organized in a vertical layout (protege.py:437-576):1. Header
- Title: “Phylotag Design” displayed at the top of the page (protege.py:445-449)
2. Forward Primer Scatter Plot
- Title: “Primer degeneracies by position” (protege.py:452-456)
- Graph ID:
scat - Displays all forward primer candidates with their positions and degeneracies (protege.py:458-461)
- Interactive click functionality for primer selection
3. Reverse Primer Zoom View
- Graph ID:
zoomScat - Dynamically updates based on forward primer selection (protege.py:502-505)
- Shows reverse primers in the vicinity of the selected forward primer
- Provides detailed view for reverse primer selection
4. Download Section
- CSV Export Button: “Download CSV” button (protege.py:529-532)
- Allows users to export the complete primer dataset
- Downloads file with timestamp:
pd_protege_YYYY-MM-DD_HHMM.csv
5. Melting Temperature Controls
- Radio Buttons: Four Tm calculation methods (protege.py:538-547)
- Tm Wallace “Rule of thumb”
- Approx 2 Based on GC content
- Approx 3 Based on GC content
- Nearest neighbor
- Default method: Wallace Rule of thumb (value = 1)
6. Temperature Distribution Plot
- Title: “Melting Temperature Distribution” (protege.py:560-564)
- Graph ID:
tdist-plot - Shows Tm distributions for selected forward and reverse primers (protege.py:566-569)
- Updates dynamically based on primer selection and Tm method
Layout Structure
The interface uses a single-column layout with components stacked vertically:Downloading Results
To export your primer data:The CSV file contains the complete dataset of all primer candidates, including positions, sequences, and degeneracies, regardless of which primers you selected in the interface.
Interactive Features
The interface is fully reactive with Dash callbacks that provide:- Real-time updates when clicking primers
- Dynamic plot regeneration based on selections
- Automatic Tm recalculation when changing methods
- Visual feedback for user interactions