Jupie Verses
Where data whispers its secrets, and patterns emerge from complexity. This guide will help you discover all the ways Jupie transforms your notebooks.
The Heart of Jupie
Overview
Jupie transforms Jupyter notebooks into living, breathing dataflow systems. Your code becomes a constellation of interconnected cells, each one illuminated by its purpose:
- Dependency detection — Jupie sees the invisible threads connecting your cells
- Parallel execution — Watch cells bloom in harmony, running together like an orchestra
- Variable piping — Let data flow naturally between notebooks, no files needed
- AI context — One tender click, and Claude understands your entire journey
- Cell-level history — Every cell remembers its story, every change preserved
1. Dependency Detection
Automatic Analysis
Like a careful reader understanding the threads of a story, Jupie automatically traces the connections in your code:
Defined Variables - Variables created in a cell:
# This cell defines: df, process_data, CONFIG
df = pd.read_csv('data.csv')
CONFIG = {'threshold': 0.5}
def process_data(data):
return data.dropna()
Used Variables - Variables referenced from other cells:
# This cell uses: df, process_data, CONFIG (from above)
# This cell defines: clean_df
clean_df = process_data(df)
threshold = CONFIG['threshold']
Explicit Annotations
Override automatic detection with comments:
# @jupie-import df, model from data_prep
# Explicitly import variables from another notebook
# @jupie-export predictions, metrics
# Mark variables for export to other notebooks
2. Execution Modes
Run All
Execute all cells in topological (dependency) order:
- Analyzes dependency graph
- Groups cells by dependency level
- Executes level by level
- Runs independent cells in parallel within each level
Run Selected Cell
Options when running a single cell:
- Run Upstream First: Execute all dependencies before this cell
- Run This Cell Only: Execute just this cell (assumes dependencies are satisfied)
- Run Downstream After: Also execute all cells that depend on this one
Resume Execution
Continue from where execution stopped:
- Skips cells with status "success"
- Re-runs cells with status "error", "stale", or "idle"
- Useful for recovering from errors
Stop Execution
Halt execution mid-run:
- Current cell completes
- Remaining cells stay "idle"
- Results from completed cells are preserved
Reset
Clear all execution state:
- All outputs cleared
- All cells return to "idle" state
- Kernel state NOT cleared (use Kernel restart for that)
3. Execution States
Each cell has an execution state shown by node color:
| State | Color | Description |
| idle | Gray | Not yet executed |
| running | Blue | Currently executing |
| success | Green | Executed successfully |
| error | Red | Execution failed |
| stale | Orange | Needs re-execution (upstream changed) |
Staleness Detection
A cell becomes "stale" when any upstream cell is re-executed.
4. Parallel Execution
Automatic Parallelization
Jupie identifies cells that can run concurrently:
Level 0: [A] # A has no dependencies
Level 1: [B, C] # B and C both depend only on A
Level 2: [D] # D depends on B and C
Cells B and C execute in parallel since they're independent.
Data Lens — See Your Data Clearly
Data Lens transforms how you understand your DataFrames. With a single click, unveil the hidden patterns, distributions, and anomalies in your data.
Profile Tab
Instant statistical overview of every column in your DataFrame:
- Data Types: Automatic detection of numeric, categorical, datetime, and text columns
- Missing Values: Percentage and count of nulls per column
- Unique Values: Cardinality for each column
- Statistics: Mean, median, std, min, max for numeric columns
- Distribution: Mini sparkline histograms inline
Preview Tab
Smart data preview with pagination and filtering:
- Paginated View: Navigate through large datasets smoothly
- Column Sorting: Click headers to sort ascending/descending
- Type Icons: Visual indicators for column data types
- Cell Formatting: Numbers, dates, and text formatted intelligently
Charts Tab
One-click visualizations that reveal patterns:
- Auto-Generated Charts: Jupie suggests the best chart type based on your data
- Histograms: Distribution of numeric columns
- Bar Charts: Frequency counts for categorical data
- Scatter Plots: Relationships between numeric columns
- Correlation Heatmaps: See relationships at a glance
- Time Series: Automatic detection and plotting of temporal data
Model Tab
Machine learning insights without leaving your notebook:
- Automatic Model Selection: Jupie chooses appropriate algorithms based on your data
- Feature Importance: See which columns matter most
- Predictions: Quick predictions with confidence scores
- Learning Curves: Understand model performance over training
- Cluster Analysis: Automatic clustering with visualization
Data History
Revolutionary diff visualization for DataFrames:
- Track Changes: See exactly how your data transforms between cells
- Row-Level Diffs: Added rows (green), deleted rows (red), modified rows (yellow)
- Cell-Level Changes: Highlight exactly which values changed
- Summary Statistics: Quick overview of what changed
- Timeline View: Navigate through data transformations step by step
Detective Jupie — Your AI Partner
Detective Jupie is your AI-powered companion that understands your entire notebook context. Ask questions, get insights, and write code through natural conversation.
Context-Aware Conversations
Unlike generic AI assistants, Detective Jupie sees everything:
- Full Notebook Context: Understands all your cells, variables, and data
- Execution History: Knows what ran successfully and what failed
- Data Understanding: Can analyze your actual DataFrames and outputs
- Code Suggestions: Writes code that fits your existing patterns
Voice-Powered Queries
Speak naturally to your notebook:
- Voice Input: Click the microphone to ask questions by voice
- Natural Language: "What's causing the outliers in column X?"
- Code Generation: "Add a cell that normalizes this data"
- Explanations: "Explain what this error means"
Smart Suggestions
Proactive insights as you work:
- Error Resolution: Automatic suggestions when cells fail
- Optimization Tips: Hints for improving slow cells
- Data Quality Alerts: Warnings about potential issues
- Next Steps: Recommendations for what to do next
Presentation Mode — Present With Delight
Transform your notebook into a stunning presentation with a single click. No slides needed — your analysis becomes the presentation.
One-Click Presentations
Enter presentation mode instantly:
- Fullscreen Mode: Immersive, distraction-free presentation
- Clean UI: Code and technical details hidden by default
- Beautiful Typography: Markdown cells rendered elegantly
- Smooth Transitions: Navigate between cells seamlessly
Live Charts & Outputs
Your visualizations shine:
- Interactive Charts: Plotly, Bokeh, and Altair charts stay interactive
- Real-Time Updates: Run cells during presentation for live demos
- Image Scaling: Outputs automatically sized for the screen
- Animation Support: Animated visualizations play smoothly
Speaker Notes
Professional presentation tools:
- Markdown Notes: Add speaker notes in cell metadata
- Timer: Keep track of your presentation time
- Progress Indicator: Know how far along you are
- Keyboard Navigation: Arrow keys for smooth cell navigation
Export Options
Share your presentation:
- PDF Export: Create a PDF version of your presentation
- HTML Export: Standalone HTML file with all interactivity
- Share Link: Generate a shareable link for collaborators
Views & Visualization
Every great story deserves multiple perspectives. Jupie offers different lenses through which to see your work.
View Navigation
Views are accessible via tabs at the top of the Jupie editor:
| Tab | Purpose |
| Search | Find cells by name, variable, or content |
| Cells | Hierarchical tree view controlled by markdown headings |
| Workflow | Interactive dependency graph |
| Data Lens | Variable inspection and data profiling |
| Profiling | Execution timing analysis |
| Versions | Git version history |
1. Search
Find cells quickly by searching across multiple fields.
Search Fields
- Cell name: Match against cell names
- Variables: Search defined and used variables
- Source code: Search within cell content
Search Results
Results are grouped by match type with color coding:
- Green: Matches in exported/defined variables
- Blue: Matches in imported/used variables
- Purple: Matches in cell/notebook names
- Orange: Matches in source code (shows context snippet)
2. Cells
Hierarchical tree view where markdown cells control the structure.
How It Works
Jupie uses markdown headings (H1-H6) to organize flat notebook cells into a tree:
- Markdown cells with
# become top-level sections
- Markdown cells with
## become subsections
- Code cells are nested under their preceding markdown heading
- Heading level determines indentation depth
Cell Display
Each cell shows:
- State icon: ○ idle, ⟳ running, ✓ success, ✗ error, ⚠ stale
- Cell name: Custom name or auto-generated
- Execution time: Duration of last run
3. Workflow
The soul of Jupie — an interactive visualization where your pipeline becomes a constellation of light. Each connection visible, each dependency illuminated.
Graph Elements
Nodes represent cells:
- Liquid glass visual style with color-coded sections
- Status badge (top-right): ✓ success, ✗ error, ⟳ running, ⏱ stale
- Execution duration (bottom): Color indicates speed
- Selection border: Yellow dashed line
Edges represent dependencies:
- Curved lines connecting nodes
- Arrow direction: from dependency → to dependent
Node Colors by Execution Time
- Green text: Fast (< 1 second)
- Yellow text: Medium (1-5 seconds)
- Orange text: Slow (5-30 seconds)
- Red text: Very slow (> 30 seconds)
Interactions
| Action | How | Result |
| Select node | Click | Highlights upstream dependencies |
| Multi-select | Ctrl/Cmd + Click | Add/remove from selection |
| Move node | Shift + Drag | Reposition node on canvas |
| Move multiple | Select multiple, then Shift + Drag | Move all selected together |
| Box select | Shift + Drag on background | Select nodes in rectangle |
| Zoom | Scroll wheel | Zoom in/out (0.1x to 3x) |
| Pan | Drag background | Move view around |
4. Profiling
Analyze execution performance to identify bottlenecks.
Header Statistics
- Total Time: Sum of all cell execution times
- Average: Mean execution time per cell
- Cells Profiled: Count of cells with timing data
Cell Performance List
Cells ranked by execution time (slowest first):
- Rank: #1, #2, #3, etc.
- Cell name: Name of the cell
- Duration: Execution time
- Bar chart: Visual representation relative to slowest
- Bottleneck badge: 🔥 for cells > 2× average time
5. Versions
Every cell tells its own story. Track changes across time, compare moments in your notebook's journey, and never lose the thread of your work.
Commit List
- Timeline graph: Visual commit history (VS Code style)
- Commit message: First line of commit message
- Author: Commit author name
- Time: Relative time (e.g., "2 hours ago")
- Stats: +X added, -X deleted, ~X modified
Diff View Modes
- Split: Side-by-side before/after columns
- Unified: Traditional unified diff format
Cell Diff Status
- 🟢 Added: New cell in compare version
- 🔴 Deleted: Cell removed in compare version
- 🟡 Modified: Cell content changed
- ⚪ Unchanged: No changes
Multi-Notebook Harmony
Let your notebooks breathe together. Jupie's breakthrough feature allows data to flow naturally between notebooks — no files, no databases, just pure, seamless connection.
The Problem with Traditional Notebooks
Traditional Jupyter workflows lead to:
- Monolithic notebooks with 1000+ cells
- Slow execution - re-running everything on each change
- No reusability - copy-paste between projects
- Difficult collaboration - constant merge conflicts
The Solution: Split into Multiple Notebooks
Monolithic Notebook (1000 cells)
|
V
Split into modular pipeline:
|
├── 01_data_prep.ipynb (50 cells)
├── 02_feature_eng.ipynb (100 cells)
├── 03_train_model.ipynb (200 cells)
├── 04_evaluate.ipynb (50 cells)
└── 05_visualize.ipynb (100 cells)
Variable Piping — The Art of Flow
Jupie introduces variable piping — pass Python objects directly between notebooks, as natural as breathing:
Exporting Variables
# In data_prep.ipynb
# @jupie-export clean_data, config
df = pd.read_csv('raw_data.csv')
clean_data = df.dropna().reset_index(drop=True)
config = {'threshold': 0.5, 'n_features': 10}
Importing Variables
# In feature_eng.ipynb
# @jupie-import clean_data, config from data_prep
# Variables are available immediately - no file I/O!
features = clean_data[clean_data['score'] > config['threshold']]
How It Works
- Jupie detects
@jupie-export annotations and tracks which variables to expose
- When a downstream notebook runs, Jupie automatically injects exported variables
- Variables are passed in-memory when possible, serialized only when necessary
- Dependency graph ensures correct execution order
Workspace Files (.ipynbw)
A workspace file groups notebooks into a single pipeline:
workspace.ipynbw
├── 01_data_prep.ipynb
├── 02_feature_eng.ipynb
├── 03_train_model.ipynb
└── 04_visualization.ipynb
Creating a Workspace
Method 1: Command Palette
Cmd/Ctrl+Shift+P → "Jupie: Create Workspace File"
- Select the folder containing your notebooks
- Enter a name for the workspace
Method 2: Manual Creation
Create a .ipynbw file - Jupie will auto-discover notebooks in the same directory.
File Export
Export the dependency graph as image files.
Graph Export
Export the dependency graph:
- SVG: Vector format, editable in design tools
- PDF: Print-ready document format
- PNG: Raster image for presentations
Selection Export
Export only selected cells as a subgraph - useful for documenting specific parts of your workflow.
Interactive Cells in Jupie
Widget Support
Standard Jupyter widgets work in Jupie:
import ipywidgets as widgets
slider = widgets.IntSlider(value=50, min=0, max=100)
display(slider)
Supported Widget Types
- Sliders, Text inputs, Checkboxes
- Dropdowns, Buttons
- Output widgets
- Interactive plots (plotly, bokeh, altair)
Persistent Kernel Sessions
Interactive cells maintain a persistent kernel:
- Variables persist between executions
- Widget state is preserved
- No need to re-run setup code
Themes — Beauty in Every Detail
Built-in Themes
Each theme is crafted to create an atmosphere where your work feels at home:
| Theme | Description |
| Pearl | Luminous and serene, like morning light on water |
| Onyx | Deep and luxurious, for those midnight inspirations |
| Blossom | Warm and vibrant, alive with creative energy |
| Coffee | Cozy and inviting, like your favorite café |
Theme Switching
- Click 🎨 Theme in toolbar
- Select theme from dropdown
- Instant preview
Command Palette
Access via Cmd/Ctrl+Shift+P and type "Jupie":
| Command | Description |
| Jupie: Select Kernel Source | Choose between local Python or Jupyter server |
| Jupie: Select Python Interpreter | Pick which Python environment to use |
| Jupie: Connect to Jupyter Server | Connect to a remote Jupyter server by URL |
| Jupie: Restart Kernel | Restart the current kernel (clears all variables) |
| Jupie: Create Workspace File | Create a new .ipynbw workspace in selected folder |
| Jupie: Enter Activation Key | Enter license key to activate Jupie |
| Jupie: Show Activation Info | View current activation status and details |
| Jupie: Deactivate | Remove activation from this machine |
| Jupie: Show Tutorial | Open the Jupie tutorial notebook |
Quick Reference
Toolbar Buttons
| Button | Action |
| ⚡ Kernel | Select Python kernel |
| ⟳ Reset | Clear all outputs |
| ▶ Run All | Execute all cells |
| ⏸ Resume | Continue from last stop |
| ⏹ Stop | Halt execution |
| 🩺 Health | Check for issues |
| ⚙️ Settings | Configure options |
| 🎨 Theme | Switch themes |
Keyboard Shortcuts
| Key | Action |
Cmd/Ctrl+Enter | Run selected cell |
Shift+Enter | Run and select next |
Cmd/Ctrl+S | Save notebook |
Dataflow View Interactions
| Action | How |
| Select node | Click |
| Multi-select | Ctrl/Cmd+click |
| Move node | Shift+drag |
| Move multiple | Select, then Shift+drag |
| Box select | Shift+drag background |
| Zoom | Scroll wheel |
| Pan | Drag background |
Questions? We're here for you. support@imlore.com