Synaptipy Logo

User Documentation

  • Synaptipy User Tutorial and Documentation
    • Table of Contents
    • 1. The Explorer Tab
      • 1.1 File Sidebar
      • 1.2 Plot Canvas
      • 1.3 Display Configuration Panel
      • 1.4 Toolbar
      • 1.5 Y-Axis Controls
      • 1.6 Adding Data to the Analyser
    • 2. Signal Preprocessing
      • 2.1 Digital Filters
      • 2.2 Baseline Subtraction Methods
      • 2.3 Artifact Blanking
      • 2.4 Trace Quality Assessment
      • 2.5 Preprocessing Comparison
    • 3. The Analyser Tab
      • 3.1 File and Data Source Selection
      • 3.2 Analysis Sub-Tab Features
      • 3.3 Shared Controls
      • 3.4 Popup Windows
      • 3.5 Session Summary
      • 3.6 Adding Your Own Analysis Tab
        • Bundled Example Plugins
        • Step 1 - Create the plugin file
        • Step 2 - Write your analysis function
        • Step 3 - Define parameter widgets (ui_params)
        • Step 4 - Define plot overlays (plots)
        • Step 5 - Control what shows in the results table
        • Step 6 - Restart and use
        • Tips
    • 4. Analysis Modules - Detailed Reference
      • 4.1 Baseline / RMP Analysis
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.2 Input Resistance (Rin)
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.3 Tau (Membrane Time Constant)
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.4 Sag Ratio (I_h)
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.5 I-V Curve
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.6 Capacitance
        • Parameters
        • Methods
        • Results
      • 4.7 Spike Detection
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.8 Phase Plane Analysis
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.9 Excitability (F-I Curve)
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.10 Burst Analysis
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.11 Spike Train Dynamics
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.12 Event Detection - Threshold Based
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.13 Event Detection - Template Match / Deconvolution
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.14 Event Detection - Baseline Peak / Kinetics
        • Parameters
        • Methods
        • Results
      • 4.15 Optogenetic Synchronization
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.16 Paired-Pulse Ratio (PPR)
        • Parameters
        • Methods
        • Results
        • Visualization
      • 4.17 Stimulus Train (STP)
        • Parameters
        • Methods
        • Results
        • Visualization
    • 5. Batch Processing
      • 5.1 Overview
      • 5.2 Opening the Batch Dialog
      • 5.3 Building a Pipeline
      • 5.4 Running and Cancellation
      • 5.5 Output Columns
        • Metadata columns (always present, appear first)
        • Analysis result columns (middle, alphabetically sorted)
        • Array-valued results
        • Trailing / debug columns
      • 5.6 Export Formats
      • 5.7 Programmatic / Headless Batch Usage
      • 5.8 Pipeline Context and Preprocessing
      • 5.9 Troubleshooting
    • 6. The Exporter Tab
      • 6.1 NWB Export
      • 6.2 Analysis Results Export
      • 6.3 Plot Export
    • 7. Preferences and Customization
      • 7.1 Preferences Dialog (Edit → Preferences)
      • 7.2 Plot Customization Dialog (View → Plot Customization)
      • 7.3 Analysis Defaults (Edit → Configure Analysis Defaults)
    • Appendix A: Supported File Formats
    • Appendix B: Architecture
      • Adding Your Own Analysis (Plugin Interface)
  • Synaptipy User Guide
    • Table of Contents
    • Installation
      • System Requirements
      • Dependencies
      • Standard Installation
        • Default Install (PyPI)
        • Standalone Application
      • Developer Installation
    • Getting Started
      • Running the Application
      • User Interface Overview
      • Demo Data
    • Loading Data
      • Supported File Formats
      • Opening Files
    • Using the Explorer Tab
      • Navigation Controls
      • Plot Options
    • Using the Analyser Tab
      • Input Resistance/Conductance Analysis
      • Baseline/RMP Analysis
      • Evoked Responses
        • Evoked Sync
        • Paired-Pulse Ratio
        • Stimulus Train (STP)
      • Sag Ratio (Ih) Analysis
      • Additional Analysis Modules
      • Visual Validation Overlays
    • Using the Exporter Tab
      • Exporting to NWB
      • Exporting Analysis Results
        • GraphPad Prism Export
      • Exporting Plots
    • Advanced Options
      • Reproducibility: How GUI Adjustments Serialize to the Batch Engine
        • Parameter capture
        • Interactive region handles
        • SessionManager serialization
        • Batch engine replay
        • Preprocessing pipeline
      • Preferences
      • Version Checking
        • Enable Custom Plugins - Hot-Reload Mechanism
        • Included Example Plugins
      • Command Line Arguments
      • Logging and Debugging
    • Generating Publication-Quality Figures
      • Standard rcParams block
      • L-shaped scale bar for electrophysiology traces
      • Statistical transparency: strip plots instead of bare bar charts
      • Saving figures for headless / CI environments
    • Licensing
    • Troubleshooting
      • Common Issues
      • Biological Troubleshooting
    • Analysis Parameter Reference
      • Getting Help
  • Algorithmic Definitions
    • Scope and Validated Conditions
    • 1. Baseline / Resting Membrane Potential (RMP)
    • 2. Input Resistance (\(R_{\text{in}}\))
      • 2.1 Series-Resistance Artifact Blanking
      • 2.2 Peak \(R_{\text{in}}\) and Steady-State \(R_{\text{in}}\) (\(I_h\) correction)
    • 3. Membrane Time Constant (\(\tau\))
      • 3.1 Mono-exponential model
      • 3.2 Bi-exponential model
    • 4. Sag Ratio
      • 4.1 Ratio form (default)
      • 4.2 Percentage form
      • 4.3 Rebound depolarisation
    • 5. Capacitance (\(C_m\))
      • 5.1 Current-clamp mode
      • 5.2 Voltage-clamp mode
      • 5.3 Current-clamp series resistance (\(R_s^{\text{CC}}\))
    • 6. Spike Detection and Action Potential Features
      • 6.1 Threshold crossing
      • 6.2 Onset detection (dV/dt-based)
      • 6.3 Amplitude
      • 6.4 Half-width
      • 6.5 Rise time (10-90%)
      • 6.6 Decay time (90-10%)
      • 6.6.1 Sub-Sample Interpolation for Kinetics
      • 6.7 Afterhyperpolarisation (AHP)
      • 6.8 Afterdepolarisation (ADP)
      • 6.9 Maximum and minimum dV/dt
      • 6.10 Absolute Peak Voltage and Overshoot
    • 7. Event Detection
      • 7.1 Threshold-based detection
      • 7.2 Template-match / matched-filter cross-correlation
      • 7.2.1 Adaptive Noise Floor Estimation
      • 7.3 Baseline-peak detection
      • 7.4 Local Pre-Event Baseline (Dynamic Amplitude for Summating Events)
    • 8. I-V Curve
    • 9. Burst Analysis
    • 10. Excitability (F-I Curve)
    • 11. Phase Plane Analysis
    • 12. Spike Train Dynamics
    • 13. Optogenetic Synchronisation
    • 14. Signal Preprocessing
      • 14.1 Digital filters
      • 14.2 Baseline subtraction
      • 14.3 Artifact blanking
      • 14.4 Trace quality assessment
    • References
      • Spike detection and AP threshold
      • Patch-clamp methodology
      • Signal processing
      • Spike-train statistics
      • NWB / FAIR data
      • Default parameter justification
      • Paired-pulse ratio and short-term plasticity
      • Visualization and accessibility
      • Array computation
      • Signal processing methods
      • Robust noise estimation
      • Preprocessing and electrode correction
      • Foundational neuroscience
      • Data handling and tabular output
    • 15. Advanced Biophysics (Publication Audit)
      • 15.1 Voltage-Clamp Series Resistance and True Membrane Capacitance
      • 15.2 AP Threshold: Strict \(dV/dt\) First-Crossing
      • 15.3 Separation of Fast AHP and Medium AHP
      • 15.4 Multi-Kernel Dendritic Tolerance in Template Matching
      • 15.5 PPR R2 Amplitude: Direct Baseline Correction
      • 15.6 PPR Residual Fitting - Bi-Exponential Upgrade
      • 15.7 Noise Floor Detrending in Quiescent Baseline RMS
        • Sliding-window algorithm and event exclusion
    • 16. Immutable Trace Correction Pipeline
      • Step A - Liquid Junction Potential (LJP) Subtraction
      • Step B - P/N Leak Subtraction
      • Step C - Pre-Event Noise Floor Zeroing
      • Step D - Signal Filtering
    • 17. 5-Pillar Analyser Architecture
  • Scientific References
    • Action Potential Detection and Kinetics
    • After-Hyperpolarisation (AHP)
    • Passive Membrane Properties
    • Electrode Corrections
    • Signal Processing
    • Robust Noise Estimation
    • Synaptic Event Detection
    • Paired-Pulse Ratio and Short-Term Plasticity
    • Spike-Train Statistics
    • Burst Detection
    • Data Standards
    • Scientific Python Ecosystem
    • Visualization
    • Plugin Integrations
    • How to Cite Synaptipy
  • NWB Export Mapping
    • Container Mapping
    • Series Class Selection
    • SI Unit Conversion
    • Electrode Metadata
    • Session Metadata
    • Subject Metadata
    • Sweep Organisation
    • Preprocessing History (FAIR Compliance)
      • Container structure
      • Availability
    • Limitations and Future Work
    • Per-Analysis-Module PyNWB Class Mapping
      • Notes on icephys best-practice containers
    • Programmatic Usage
  • Writing Custom Analysis Plugins for Synaptipy
    • Table of Contents
    • 1. Overview - How the Plugin System Works
    • 2. Quick Start - Your First Plugin in 5 Minutes
    • 3. The Plugin File - Anatomy of a Custom Analysis
      • 3.1 Part 1: Pure Analysis Logic
      • 3.2 Part 2: Registry Wrapper
      • 3.3 Return Dict Conventions
      • 3.3 The expects_list Parameter
    • 4. Defining GUI Parameters (ui_params)
      • 4.1 float Parameter
      • 4.2 int Parameter
      • 4.3 choice / combo Parameter
      • 4.4 bool Parameter
      • 4.5 string Parameter
      • 4.6 filepath Parameter (with Browse button)
      • 4.7 dirpath Parameter (with Browse button)
      • 4.8 Common Optional Fields
      • 4.9 Conditional Visibility (visible_when)
    • 5. Defining Plot Overlays (plots)
      • 5.1 hlines - Horizontal Lines
      • 5.2 vlines - Vertical Lines
      • 5.3 markers - Scatter Points
      • 5.4 interactive_region - Draggable Region
      • 5.5 threshold_line - Draggable Threshold
      • 5.6 overlay_fit - Curve Overlay
      • 5.7 popup_xy - Popup Scatter/Line Plot
      • 5.8 brackets - Burst/Event Brackets
      • 5.9 event_markers - Interactive Event Points
      • 5.10 trace - Base Trace with Overlay
      • 5.11 fill_between - Shaded Region Between Two Curves
      • 5.12 trace_overlay - Highlight a Region on the Raw Trace
      • 5.13 event_fit_overlay - Overlay Fitted Event Decay Curves
    • 6. Where to Put Your Plugin File
      • Real-world templates in examples/plugins/
      • Option A: Built-in Examples Directory
        • Included Example Plugins
      • Option B: User Plugin Directory (recommended for personal additions)
      • Option C: Built-in Module (for core contributors)
    • 7. For Core Contributors - Adding a Built-in Analysis
    • 8. Testing Your Plugin
      • Unit-testing the logic function
      • Integration-testing the registry wrapper
      • Testing the template shipped with Synaptipy
    • 9. Full Annotated Example - Synaptic Charge Transfer
    • 10. Applying Global Themes to Plugins
      • How the theme reaches your plugin
      • Returning styled plot data
      • Listening to live theme changes in a popup window
    • 11. SpikeInterface Integration Plugin
      • What the plugin does
      • Before running
      • After running - 3 detected spikes
      • Installation
      • Key parameters
      • Testing the plugin without running the full CI suite
    • 12. Deep Learning & Third-Party Integrations (e.g., miniML)
      • 4-step workflow
      • miniML Integration Example
        • Installation warning
      • Template: examples/plugins/miniml_integration.py
      • miniML API notes (common pitfalls)
        • EventDetection.__init__() parameters
        • detect_events() parameters
        • Marker placement: onset vs. amplitude peak
      • Adapting the template to other ML tools
    • 13. Troubleshooting
  • Reproducibility Guide
    • Pinned Environment
    • Docker Container
    • Random Seed Policy
    • Verification
    • Version Pinning Rationale
  • Feature Comparison: Synaptipy vs. Existing Tools
    • Tool Overview
    • File Format Support
    • Analysis Capabilities
    • Reproducibility & Data Standards
    • Unique Contributions of Synaptipy
    • Sources
  • Synaptipy API Reference
    • Table of Contents
    • Core Components
      • Data Model
        • UndoStack
        • Channel
        • Recording
        • Experiment
        • Usage Example
      • File Readers
        • NeoAdapter
        • Usage Example
      • Analysis Modules
        • Module 1 - Passive Membrane Properties
        • Module 2 - Single Spike Analysis
        • Module 3 - Firing Dynamics
        • Module 4 - Synaptic Events
        • Module 5 - Evoked Responses
        • Analysis Registry
        • Usage Example - Registry
      • Batch Processing
        • Output Design Principles
        • BatchAnalysisEngine
        • Usage Example
        • Epoch Manager
      • Signal Processing
        • validate_sampling_rate()
        • check_trace_quality()
        • bandpass_filter()
        • lowpass_filter()
        • highpass_filter()
        • notch_filter()
        • comb_filter()
        • subtract_baseline_mode()
        • subtract_baseline_mean()
        • subtract_baseline_median()
        • subtract_baseline_linear()
        • subtract_baseline_region()
        • blank_artifact()
        • find_artifact_windows()
        • compute_psd()
        • multi_harmonic_notch()
        • validate_recording_conditions()
        • Processing Pipeline
      • Plugin System
        • PluginManager
        • Usage Example
      • Exporters
        • CSV Exporter
        • NWB Exporter
        • Usage Example
    • Licensing

Developer Documentation

  • Synaptipy Developer Guide
    • Table of Contents
    • Development Environment Setup
      • Prerequisites
      • Setting Up Your Development Environment
    • Project Structure
    • 5-Pillar Analyser Architecture
      • Immutable Trace Correction Pipeline
    • Writing Custom Analysis Plugins
    • Architecture & Performance Patterns
      • Asynchronous UI & Background Loading
      • UI Interaction Debouncing
    • UI & Styling Guidelines
    • Development Workflow
      • Feature Development
      • Code Review Process
    • Testing
      • Running Tests
      • CI Test Matrix
      • Golden Master Tests
      • Writing Tests
    • CI Behaviour and Platform-Specific Test Rules
      • PyInstaller console=False and faulthandler.enable()
      • Analysis Registry import rule - DO NOT import only registry.py
      • Editable install must point to the active workspace
      • Why local macOS tests always exit non-zero
      • GC must be disabled in offscreen mode
      • processEvents() before addPlot() in offscreen mode
      • removePostedEvents() must skip macOS
      • enableMenu=False in offscreen mode
      • Plot teardown order
      • NeoAdapter ABF rescue path
    • Coding Standards
      • Formatting your code
    • License Compliance
      • License Requirements
      • Adding New Files
      • Third-Party Dependencies
  • Development Guides
    • Overview
    • Code Quality
    • Key Design Rules
    • Contributing
      • Synaptipy Styling Guide
        • Overview
        • Key Components
        • How to Use
        • Best Practices
        • Architecture Benefits
        • Migration from Previous System
      • Architecture & Design Decisions
        • Log Error Analysis - All Errors from File Addition Onwards
        • Plot Customization Performance Optimizations
        • Rendering Performance Optimizations
      • Manuals
        • Cross-Platform Setup for Synaptipy
        • Manual Testing Guide for Performance Fixes
Synaptipy
  • Development Guides
  • Manuals
  • Edit on GitHub

Manuals

Extended manuals covering cross-platform setup and hands-on testing procedures.

Manuals

  • Cross-Platform Setup for Synaptipy
    • Problem Statement
    • New Solution: Single Environment Approach
    • Implementation Details
    • Cross-Platform Compatibility
    • Installation Commands
    • Benefits
    • Testing
    • How Conda Handles OS-Specific Packages
    • Repository Structure
    • Result
  • Manual Testing Guide for Performance Fixes
    • Prerequisites
    • Test 1: Verify Fast File Loading (Fix 4)
    • Test 2: Verify Multi-Channel Data Loading (Fix 3)
    • Test 3: Verify Plot Customization Performance (Fixes 1 & 2)
    • Test 4: Verify Fast Plotting for Large Files (Fix 5)
    • Test 5: Verify Linked X-Axis Zooming (Fix 6)
    • Test 6: Verify Overlay Mode Still Works (Fix 5 Regression Check)
    • Performance Benchmarks
    • Troubleshooting
    • Success Criteria
    • Reporting Issues
Previous Next

© Copyright 2024-2026, Anzal K. Shahul. Last updated on Jun 23, 2026.

Built with Sphinx using a theme provided by Read the Docs.