Visual Debugger

Master NOPE-PRO's powerful visual debugging tools to understand and optimize your code flows.

Visual Debugger

The NOPE-PRO Visual Debugger is one of the most powerful features of the library, transforming complex Result chains into clear, visual flows that you can inspect, analyze, and debug in real-time.

๐ŸŽฏ What is Visual Debugging?

Visual debugging goes beyond traditional logging and breakpoints. It provides:

  • Real-time flow visualization - See your code execute as it happens
  • Success/failure tracking - Color-coded paths showing exactly where things go right or wrong
  • Performance analysis - Timing and memory allocation tracking for each operation
  • Value inspection - Examine inputs, outputs, and intermediate values at every step
  • Error diagnostics - Detailed error information with context and stack traces

๐Ÿ“š Documentation

Visual Debugging Guide

Complete guide to using NOPE-PRO's visual debugging system.

  • Setting up visual debugging - Quick setup via Settings window or manual configuration
  • Flow Debugger Window - Master the main debugging interface
  • Runtime Overlay - In-game debugging with F9 overlay
  • Advanced techniques - Custom metadata, conditional debugging, and performance analysis
  • Best practices - Production-ready debugging strategies

๐Ÿš€ Quick Start

Get started with visual debugging in 3 simple steps:

  1. Enable debugging: Go to Window โ†’ NOPE โ†’ Settings and check "Enable Visual Debugging"
  2. Add to your code: Add .EnableDebug("MyFlow") to any Result chain
  3. Open the debugger: Go to Window โ†’ NOPE โ†’ Flow Debugger to see your flows
1// Example: Basic visual debugging
2LoadPlayerData(playerId)
3    .EnableDebug("PlayerLoad")  // This makes it visible in the debugger
4    .Bind(ValidatePlayer)
5    .Map(ApplyBuffs)
6    .Match(
7        onSuccess: player => { Debug.Log($"Loaded {player.Name}"); return Unit.Value; },
8        onFailure: error => { Debug.LogError(error); return Unit.Value; }
9    );

๐Ÿ’ก Key Features

๐Ÿ” Flow Debugger Window

  • Complete operation breakdown with timing
  • Input/output value inspection
  • Error analysis with stack traces
  • Flow filtering and search

โš™๏ธ Flexible Configuration

  • Easy setup via Settings window
  • Conditional debugging for production
  • Custom metadata support
  • Memory and performance controls

๐Ÿ“Š Performance Analysis

  • Operation timing breakdown
  • Memory allocation tracking
  • Flow completion statistics

๐Ÿ› ๏ธ Use Cases

Perfect for debugging:

  • Complex validation chains
  • Multi-step data processing
  • Error-prone operations
  • Performance bottlenecks
  • Async operation flows
  • Integration points

Great for understanding:

  • How your Result chains execute
  • Where failures occur in complex workflows
  • Performance characteristics of operations
  • Data transformations at each step

๐ŸŽจ Visual Flow States

The debugger uses intuitive color coding:

  • ๐ŸŸข Success (Green): Operations completed successfully
  • ๐Ÿ”ด Failure (Red): Operations failed with unhandled errors
  • ๐ŸŸก Handled (Yellow/Orange): Failed operations properly handled by Match/Finally
  • ๐Ÿ”ต Active (Blue): Currently executing operations
  • โšช Cancelled (Gray): Operations that were cancelled

๐Ÿ”— Integration

Visual debugging integrates seamlessly with:

  • Unity Editor: Built-in windows and overlays
  • UniTask: Async operation visualization
  • Production code: Conditional debugging with minimal overhead

๐Ÿ“ˆ Benefits

  • Faster debugging: See exactly where and why things fail
  • Better understanding: Visualize complex operation chains
  • Performance optimization: Identify bottlenecks and slow operations
  • Team collaboration: Share visual flows to explain complex logic
  • Quality assurance: Validate that error handling works correctly

Ready to start visual debugging? Check out the Visual Debugging Guide for detailed instructions and advanced techniques!