SPIN notebooks extend the familiar Jupyter model with specialized cell types and operational features for troubleshooting and automation. Understanding these concepts will help you create effective operational runbooks.

Notebook Fundamentals

Notebook Structure

A SPIN notebook consists of:
  • Sequential cells: Executed independently or as a workflow
  • Session state: Persists variables and context across cell executions
  • Output history: Captures results for collaboration and audit
  • Metadata: Defines notebook purpose, ownership, and configuration

Cell Execution Model

Unlike scripts, notebook cells can be:
  • Executed individually for testing and development
  • Run out of order for non-linear troubleshooting
  • Re-executed to refresh data or retry failures
  • Chained together with shared variables and state

Cell Types

SPIN supports multiple cell types for different tasks: There are also cells for specific integrations: You can also extend SPIN with custom cells using Add-ons.

Output Variables

Cells can store results in named variables for use by later cells:
  • Variables persist throughout the session
  • Shared across all cell types
  • Complex data structures (DataFrames, JSON) are preserved
  • Variables can be cleared or reset

Template Variables

Enable dynamic notebook behavior using template variables.

Output and Results

SPIN provides specialized rendering for operational data:
  • Data Tables
  • Time Series Charts
  • JSON Trees
as well as standard Jupyter outputs:
  • Images
  • HTML
  • Markdown
  • Text