Skip to content

Releases: bhowiebkr/PyFlowGraph

v0.11.1

10 Sep 21:23
c04d1b2

Choose a tag to compare

Core Engine Fixes

Named Output Pins System Overhaul

  • Fixed connection deserialization: Resolved critical issue where graphs using @outputs: docstring annotations failed to execute due to ambiguous pin name resolution
  • Added direction-aware pin lookup: Implemented get_pin_by_name_and_direction() method in Node class for precise pin identification during connection creation
  • Enhanced pin update algorithm: Replaced naive pin removal/recreation with intelligent position-based matching that preserves connections during docstring edits
  • Connection preservation: Pin renaming operations now maintain all existing connections, types, and visual properties

Code Editor Integration Fixes

  • CommandHistory method calls: Fixed AttributeError in CodeEditorDialog where incorrect push() calls were replaced with proper execute_command() method
  • Pin type synchronization: Function signature type changes now correctly update both pin.pin_type property and visual labels
  • Real-time updates: Pin labels refresh automatically when function annotations are modified (e.g., Data (str) to Data (int))

Pin Display Enhancements

  • Type visibility controls: Added Settings dialog checkbox for toggling pin type display with dynamic refresh capability
  • Label formatting: Pin labels can show/hide type information (e.g., length (int)) based on user preference
  • Settings persistence: show_pin_types setting saved with default value true

Build System Improvements

  • Script error fixes: Corrected syntax errors in batch files that caused build failures
  • Automated workflow: Removed interactive prompts to enable automated builds
  • Build organization: All artifacts now organized into builds/ directory structure
  • PowerShell compatibility: Fixed Python runtime download command and updated deprecated Nuitka console options
  • Artifact management: Added builds/ to .gitignore to prevent accidental commits

Example Graph Updates

  • Named pin migration: Updated all example graphs with proper @outputs: annotations
  • Connection fixes: Corrected pin names in weather_data_processor.md, nvidia_gpu_computer_vision_pipeline.md, and recipe_nutrition_calculator.md
  • File dialog memory: Added folder memory functionality to remember last used directory
  • Example cleanup: Removed 10 outdated example files that lacked named output pin support

Documentation Restructure

  • Organized hierarchy: Restructured docs into logical categories (developer_guide, implementation, issues, project, reference, user_guide)
  • Technical specifications: Added Epic 3.4 documentation and pin type visibility enhancement specifications
  • Development guides: Enhanced testing documentation and implementation notes

Technical Improvements

  • Backward compatibility: All changes maintain compatibility with existing graphs
  • Error handling: Enhanced error handling in execution pipeline and connection resolution
  • Code organization: Improved module structure and separation of concerns

Known Issues

  • Python virtual environment configuration requires manual setup
  • Environment switching workflow needs refinement
  • Some build script edge cases on specific Windows configurations

Files Changed: 65 files modified, 13,889 additions, 5,055 deletions

v0.11.0

01 Sep 05:41
0d60178

Choose a tag to compare

PyFlowGraph v0.11.0

Release Date: September 1, 2025
Build: 0d60178

Major Changes

Single Process Execution Architecture

Replaced subprocess isolation with direct Python function calls for significant performance improvements.

Implementation:

  • Added SingleProcessExecutor class for direct function execution
  • Modified GraphExecutor to use single process instead of subprocess.run()
  • Implemented persistent namespace for imports and variables
  • Added direct object reference passing without JSON serialization

Performance Results:

  • Execution speed: 96,061 operations/second (0.01ms per operation)
  • Eliminated subprocess overhead (50-200ms → <1ms per node)
  • Removed JSON serialization overhead completely
  • Import persistence eliminates re-import costs

Native Object Passing System

Implemented zero-copy object passing for ML frameworks.

Supported Types:

  • PyTorch tensors with GPU memory sharing
  • NumPy arrays with direct references
  • Pandas DataFrames without copying
  • TensorFlow tensors and variables
  • JAX arrays with hardware acceleration

Measured Performance Improvements:

  • PyTorch operations: 4,000x-7,500x faster
  • NumPy array processing: 95x-100x faster
  • Pandas DataFrame operations: 20x-50x faster
  • Large object transfers: eliminated (now uses references)

NVIDIA GPU Computer Vision Pipeline

Added complete computer vision workflow demonstrating GPU acceleration.

Components:

  • Image preprocessing with CUDA tensors
  • ResNet50 classification with ImageNet labels
  • GPU device detection and reporting
  • Automatic GPU memory management

Requirements:

  • NVIDIA GPU with CUDA support
  • CUDA-enabled PyTorch (2.0.0+cu118)
  • CUDA Toolkit installation

Technical Improvements

Virtual Environment Management

  • Fixed environment switching between different graphs
  • Added proper package loading from graph-specific virtual environments
  • Implemented dynamic sys.path injection for package availability
  • Added Dependencies section support to FlowSpec format

GUI Fixes

  • Fixed undo history dialog text visibility in dark theme
  • Fixed Clear Results button functionality in computer vision pipeline
  • Added proper device information display (cuda:0 vs cpu)
  • Implemented absolute path resolution for relative image paths
  • Added meaningful ImageNet class names instead of numeric IDs

Testing

Added 36 new tests covering:

  • Native object passing validation
  • ML framework integration testing
  • Memory leak detection
  • Performance benchmarking
  • Edge cases (circular references, concurrent access)

Bug Fixes

Virtual Environment Issues

  • Fixed environment switching when loading graphs with different requirements
  • Resolved package loading issues with proper sys.path management
  • Fixed PyTorch deprecation warnings (updated torchvision API usage)
  • Corrected import path consistency for isinstance() compatibility

GUI State Management

  • Fixed Clear Results button scope issues in GUI State Handler
  • Resolved node reference access in GUI functions
  • Fixed device information connection routing
  • Improved connection source accuracy for device reporting

Breaking Changes

Architecture Change: PyFlowGraph now uses single-process execution instead of subprocess isolation.

Impact:

  • Performance: Significant speed improvements for all workflows
  • Security: Reduced process isolation (traded for performance)
  • Compatibility: Existing graphs work unchanged
  • Environment: Virtual environment isolation maintained

Installation

Requirements:

  • Windows OS with Python 3.8+
  • PySide6
  • Optional: NVIDIA GPU + CUDA for computer vision features
  • Optional: PyTorch, NumPy, Pandas for ML workflows

Installation:

  1. Download and extract PyFlowGraph-Windows-v0.11.0.zip
  2. Run PyFlowGraph.exe

Documentation Updates

  • Updated Epic 3 specifications for single-process architecture
  • Added performance benchmarks and metrics
  • Enhanced FlowSpec format with Dependencies section
  • Added LLM documentation for AI-assisted graph creation
  • Updated memory management and GPU cleanup documentation

v0.10.0

23 Aug 04:50
452bd0e

Choose a tag to compare

PyFlowGraph v0.10.0 - Node Grouping & Advanced Features

Release Date: August 23, 2025
Build: 452bd0e | Asset: PyFlowGraph-Windows-v0.10.0.zip

🎯 Major Features

Complete Node Grouping System

Revolutionary visual organization system for complex graphs:

Core Group Features:

  • Visual Containers: Create groups to organize related nodes with customizable colors, sizes, and transparency
  • Dynamic Membership: Groups automatically update member lists based on spatial containment
  • Group Hierarchy: Full support for nested groups and complex organizational structures
  • State Preservation: Groups maintain all visual properties through save/load cycles

Group Management:

  • Creation: Right-click context menu with intelligent node selection and auto-sizing
  • Editing: Comprehensive properties dialog for name, description, colors, and visual settings
  • Resizing: Interactive resize handles with automatic member node management
  • Deletion: Full Delete key support with complete undo/redo functionality ✅

File Format Integration:

  • Groups Section: New markdown section for group persistence with RGBA color support
  • Backward Compatibility: Existing graph files load seamlessly without groups
  • Rich Metadata: Groups support descriptions, timestamps, padding, and expansion states

Enhanced Undo/Redo Architecture

Complete command pattern implementation across all operations:

Command Infrastructure:

  • Modular Commands: Separated into commands/node/ package with distinct operation types
  • Composite Commands: Multi-operation undo/redo (e.g., paste multiple nodes + groups)
  • Memory Management: Intelligent command cleanup with memory usage tracking
  • Group Commands: Dedicated commands for all group operations (create, delete, resize, properties)

Batch Operations:

  • DeleteMultipleCommand: Unified deletion supporting nodes, connections, and groups
  • Enhanced Selection: Mixed selections (nodes + groups + connections) work seamlessly
  • Smart Descriptions: Context-aware command descriptions (e.g., "Delete 3 nodes and 2 groups")

🐛 Critical Bug Fixes

Group System Fixes

  • Fixed group deletion functionality - Groups can now be deleted with Delete key (#42)
  • Resolved keyboard event handling that completely ignored Group objects
  • Fixed group state restoration during undo to maintain object references
  • Corrected group membership tracking during resize and move operations

Live Mode Execution Fixes

  • Fixed critical Live Mode pause/resume bug causing execution failures (#38)
  • Resolved subprocess communication issues during pause/resume cycles
  • Fixed event system integration with Live Mode state management
  • Improved execution error handling and recovery mechanisms

Command System Improvements

  • Refactored node_commands.py into modular package structure for maintainability
  • Fixed circular import issues between command modules
  • Enhanced command memory management with proper cleanup and resource tracking
  • Improved command execution error handling and rollback mechanisms

📊 Enhanced Testing Infrastructure

Professional Test Suite

  • GUI Test Runner: run_test_gui.bat with real-time visual feedback
  • Comprehensive Coverage: 18+ test files covering all major systems
  • Performance Optimized: Tests complete within 10-second maximum timeouts
  • Enhanced Failure Analysis: Detailed error reporting with fix suggestions

Test Categories

  • Core System Tests: Node, pin, connection, and group functionality
  • Integration Tests: End-to-end workflows and GUI interactions
  • Regression Tests: Prevention of previously fixed bugs
  • Performance Tests: Execution speed and memory usage validation

🏗️ Technical Improvements

Documentation Enhancements

  • Flow Specification Updates: Complete groups section with technical details
  • Enhanced Examples: New password_generator_tool_group.md demonstrating group usage
  • API Documentation: Comprehensive command system and group API reference

Code Quality

  • Import System Optimization: Cleaner cross-package imports with proper dependency management
  • Error Handling: Robust error recovery across all group and command operations
  • Windows Platform Compliance: Enhanced Windows-only development requirements
  • Memory Optimization: Improved resource cleanup and garbage collection

🚨 Breaking Changes

None - This release maintains full backward compatibility:

  • Existing graph files load without modification
  • All previous keyboard shortcuts and UI patterns work unchanged
  • Command history from previous sessions remains accessible

🆕 New File Format Features

Groups Section (Optional)

## Groups
```json
[
    {
        "uuid": "group-1",
        "name": "Data Processing Group",
        "description": "Handles all data transformation operations",
        "member_node_uuids": ["node1", "node2"],
        "position": {"x": 150, "y": 200},
        "size": {"width": 400, "height": 300},
        "colors": {
            "background": {"r": 45, "g": 45, "b": 55, "a": 120},
            "border": {"r": 100, "g": 150, "b": 200, "a": 180}
        }
    }
]

🎮 User Experience Improvements

Keyboard Shortcuts

  • Delete Key: Now properly removes groups, nodes, and connections
  • Ctrl+Z/Ctrl+Y: Full undo/redo support for all group operations
  • Context Menus: Enhanced right-click options for group creation and management

Visual Enhancements

  • Group Selection: Clear visual feedback with customizable selection colors
  • Resize Handles: Intuitive group resizing with live member updates
  • Color Customization: Full RGBA color picker integration for all group elements
  • Transparency Support: Semi-transparent groups for better visual layering

🚀 Performance Improvements

  • Optimized Group Rendering: Efficient redraw cycles for large group hierarchies
  • Command Execution: Faster undo/redo operations with reduced memory overhead
  • File Loading: Improved parsing performance for graphs with many groups
  • Selection Operations: Faster mixed-selection handling with better algorithms

📦 Getting Started

Installation: Download PyFlowGraph-Windows-v0.10.0.zip
Requirements: Windows OS, PySide6
Quick Start: Run PyFlowGraph.exe from extracted folder
Testing: Use included test suite via run_test_gui.bat

🔮 What's Next

This release establishes PyFlowGraph as a professional node-based editor with enterprise-grade features. The robust grouping system and enhanced command architecture provide the foundation for advanced features like:

  • Group templates and libraries
  • Advanced data flow analysis
  • Collaborative editing features
  • Plugin system integration

Full Changelog: View on GitHub

v0.9.0

17 Aug 18:23
5e3f655

Choose a tag to compare

PyFlowGraph v0.9.0 - Major Architecture Overhaul

Release Date: August 17, 2025
Build: 5e3f655 | Asset: PyFlowGraph-Windows-v0.9.0.zip

🏗️ Major Features

Comprehensive Modular Architecture Reorganization

Complete restructuring of the codebase from flat structure to organized modules:

src/
├── core/           # Core graph engine (node.py, pin.py, connection.py, etc.)
├── ui/             # User interface organization
│   ├── editor/     # Node editor UI (window, view, state)
│   ├── dialogs/    # All dialog components  
│   ├── code_editing/  # Python code editor & syntax highlighting
│   └── utils/      # UI utility functions
├── execution/      # Code execution & environment management
├── data/          # Data persistence & format handling
├── utils/         # Shared utilities (color, debug)
├── testing/       # Test infrastructure
└── commands/      # Command pattern (undo/redo system)

Benefits:

  • Clear separation of concerns
  • Logical component grouping
  • Improved IDE support and debugging
  • Scalable architecture for future development
  • Reduced merge conflicts

Two-Tier Testing System

Revolutionary testing approach with distinct categories:

Headless Tests (tests/headless/) - Development Speed

  • Fast unit tests for core logic validation
  • No GUI overhead for quick development feedback
  • Business logic and data structure testing
  • Files: test_node_system.py, test_pin_system.py, test_connection_system.py

GUI Integration Tests (tests/gui/) - Real User Validation

  • Actual user interaction testing with visible windows
  • Complete workflow simulation and integration testing
  • Catches issues that headless tests miss
  • Files: test_full_gui_integration.py, test_end_to_end_workflows.py

New Test Runners:

  • run_headless_tests.bat - Quick development testing
  • run_gui_tests.bat - Full GUI integration testing
  • run_enhanced_test_gui.bat - Visual test management interface

🐛 Critical Bug Fixes

Runtime & Execution Fixes

  • Fixed critical GUI runtime bugs discovered through interactive testing
  • Resolved execution errors: "No module named 'graph_executor'"
  • Fixed circular import issues between ExecutionController and UI modules
  • Resolved ButtonStyleManager import errors in execution mode switching

Unicode & Encoding Fixes

  • Eliminated emoji characters causing Windows console encoding errors
  • Fixed Unicode decode errors (cp1252 codec issues)
  • Replaced emoji status indicators (✅❌) with ASCII alternatives ([PASS]/[FAIL])
  • Ensured Windows compatibility across all test files

Connection & Node System Fixes

  • Fixed pin connection validation and direction constraints
  • Resolved reroute node undo/redo issues (user-reported bug)
  • Fixed connection serialization with proper pin UUID handling
  • Improved node serialization to return JSON-compatible lists instead of tuples

Test System Quality Improvements

  • Fixed QMouseEvent deprecation warnings with global position parameters
  • Corrected connection attribute mappings (output_pin→start_pin, input_pin→end_pin)
  • Improved pin type validation handling both 'Any' and 'any' case-insensitively
  • Optimized test timeouts (reduced from 60s to 10s maximum)

🔧 Technical Improvements

Import System Overhaul

  • Updated all import paths for new modular structure
  • Fixed project root path handling for cross-package imports
  • Resolved "flat import" patterns causing import errors
  • Added proper __init__.py files with clean exports

Code Quality Enhancements

  • Removed unused imports (QtMsgType, QBrush, QContextMenuEvent, deque)
  • Eliminated unused variables and improved code consistency
  • Fixed class name consistency (TestRunnerMainWindow)
  • Applied consistent path resolution patterns

Windows Platform Compliance

  • Enhanced Windows-only platform requirements in CLAUDE.md
  • Fixed batch file paths (run_test_gui.bat corrected)
  • Specified forbidden Linux commands and Windows alternatives
  • Ensured Windows development environment compliance

📚 Documentation Additions

  • PySide6 Testing Guide (docs/development/pyside6-testing-guide.md)
  • Test Suite Organization (docs/development/test-suite-organization.md)
  • AI Agent Integration Guide for SuperClaude integration
  • Enhanced project structure documentation

⚠️ Breaking Changes

Import Path Changes: Module imports changed from flat to modular structure

  • Before: from node import Node
  • After: from core.node import Node

All internal imports have been updated. External integrations may need import path updates.

🧪 Quality Assurance

  • 74 files changed with comprehensive reorganization
  • 24 test files now passing with new structure
  • 100% headless test success rate (Node: 12/12, Pin: 13/13, Connection: 14/14)
  • GUI integration tests cover real user workflows
  • Unicode encoding compliance across all Windows environments

🚀 Getting Started

Installation: Download PyFlowGraph-Windows-v0.9.0.zip
Requirements: Windows OS, PySide6
Quick Start: Run run.bat
Testing: Use run_enhanced_test_gui.bat for visual test management

This release represents a foundational architecture improvement that sets PyFlowGraph up for scalable future development while maintaining full backward compatibility for end users.


Full Changelog: View on GitHub

v0.7.6

14 Aug 16:08

Choose a tag to compare

📦 Release Packaging Fixes

This release fixes critical packaging issues that were excluding essential files from the distribution package.

🔧 Fixed Issues:

  • 📁 Missing Example Graphs: v0.7.5 excluded all .md files, removing the 10 example graph files users need
  • ⚖️ Missing License: LICENSE.txt was excluded from releases, creating legal compliance issues
  • 🗑️ Unwanted Development Files: Releases included .gitignore, run.bat, and other development artifacts

What's New in v0.7.6:

  • 🎯 Professional Executable: PyFlowGraph.exe (renamed from generic main.exe)
  • 📦 Single-Zip Distribution: Extract once and run - no more double-zip confusion
  • 🗂️ Proper Structure: Python runtime correctly organized as subdirectory
  • 🎨 Complete Example Collection: All 10 sample graphs now included for immediate use

📋 Package Contents:

  • PyFlowGraph.exe - Main application executable (8.8MB)
  • examples/ - 10 sample graph files (.md format for loading into PyFlowGraph):
    • data_analysis_dashboard.md - Data processing and visualization workflow
    • interactive_game_engine.md - Real-time game mechanics with input handling
    • personal_finance_tracker.md - Budget analysis and financial calculations
    • text_processing_pipeline.md - NLP workflow with regex and analysis
    • weather_data_processor.md - API data fetching and processing
    • recipe_nutrition_calculator.md - Recipe analysis with nutritional data
    • social_media_scheduler.md - Content planning and automation
    • password_generator_tool.md - Secure password generation utilities
    • file_organizer_automation.md - Automated file management workflows
    • Procedural_Sci-Fi_World_Generator.md - Advanced procedural content generation
  • python_runtime/ - Embedded Python 3.11 runtime with full standard library
  • LICENSE.txt - MIT license (required for legal distribution)
  • PySide6/ - Qt6 GUI framework libraries and plugins
  • resources/ - Font Awesome icons and UI assets
  • All required DLLs - Visual C++ redistributables, Qt6 libraries, crypto libraries

🎨 PyFlowGraph Features:

  • Universal Node Editor: Visual scripting for any Python code
  • Code-as-Nodes: Automatic pin generation from Python function signatures
  • Real-time Execution: Live graph execution with subprocess isolation
  • Professional UI: Dark theme with Font Awesome iconography
  • Graph Persistence: Human-readable Markdown format for saving workflows
  • Virtual Environment Support: Isolated Python environments per project
  • Example-Driven Learning: Comprehensive sample graphs demonstrating capabilities

💾 System Requirements:

  • OS: Windows 10/11 (x64)
  • Dependencies: None - fully self-contained package
  • Disk Space: ~200MB for full extraction
  • Memory: 4GB RAM recommended for complex graphs

🚀 Quick Start:

  1. Download PyFlowGraph-Windows-v0.7.6.zip (83MB)
  2. Extract to your preferred location
  3. Run PyFlowGraph.exe
  4. Explore sample graphs: File > Open → Browse to examples/ folder
  5. Create your own visual Python workflows!

🔗 Learn More:

  • Load Examples: Use File > Open and browse to the examples/ directory
  • Create Nodes: Write Python functions with type hints for automatic pin generation
  • Connect & Execute: Build data flow graphs and run them in real-time
  • Save & Share: Export graphs as readable Markdown files

Technical Details:

  • Executable: Professional PyFlowGraph.exe naming
  • Architecture: Python 3.11 + PySide6 + Qt6
  • Packaging: Nuitka compilation with embedded runtime
  • Build: #16970360248
  • Commit: f13d3e8

v0.7.5

14 Aug 15:46

Choose a tag to compare

🔧 Windows Build Improvements

This release fixes critical packaging issues and introduces professional executable naming.

Key Improvements:

  • 🎯 Professional Executable: Renamed from main.exe to PyFlowGraph.exe
  • 📦 Fixed Packaging: Resolved double-zipping issue for better user experience
  • 🗂️ Proper Structure: Python runtime now correctly organized as subdirectory
  • 🚀 Single Extraction: Extract once and run - no more nested zip confusion

📋 What's Included:

  • PyFlowGraph.exe - Main application executable (8.8MB)
  • examples/ - 10 sample graph files demonstrating features
  • python_runtime/ - Embedded Python 3.11 runtime with full standard library
  • PySide6/ - Qt6 GUI framework libraries
  • resources/ - Font Awesome icons and UI assets
  • All required DLLs - Visual C++ redistributables, Qt6 libraries, crypto libraries

🎨 Application Features:

  • Universal node-based visual scripting editor
  • Code-as-nodes with automatic pin generation from Python function signatures
  • Real-time graph execution with subprocess isolation
  • Professional dark theme UI with Font Awesome icons
  • Comprehensive test suite with GUI test runner
  • Example graphs: data analysis, automation, game engine, and more

💾 System Requirements:

  • Windows 10/11 (x64)
  • No additional Python installation required
  • ~200MB disk space for full extraction

🚀 Quick Start:

  1. Download PyFlowGraph-Windows-v0.7.5.zip
  2. Extract to desired location
  3. Run PyFlowGraph.exe
  4. Explore example graphs in the examples/ folder

Build Information:

  • Built from commit: 7e46d6d
  • Artifact: PyFlowGraph-Windows-v0.7.5.zip (~84MB)
  • Build run: #16969703517

v0.6.0

13 Aug 15:09

Choose a tag to compare

PyFlowGraph v0.6.0 - Markdown File Format

Major Changes

🎯 New Markdown File Format

  • Introduced human-readable Markdown-based file format (.md) replacing JSON serialization
  • Files now combine structured metadata with readable documentation
  • Enhanced compatibility with large language models and external tools
  • Maintains full backward compatibility for existing graphs

📚 Documentation Overhaul

  • Completely redesigned README with technical focus
  • Added comprehensive file format specification (flow_spec.md)

🔧 GUI and Rendering Improvements

  • Fixed reroute node serialization and rendering bugs
  • Improved node layout system stability
  • Enhanced graph loading and refresh mechanisms
  • Added comprehensive GUI testing suite

🧪 Testing Infrastructure

  • Added extensive GUI loading test suite
  • Improved test documentation and runner scripts
  • Enhanced bug detection and validation workflows

Technical Details

The new Markdown format stores graph topology, node positioning, code content, and environment requirements in a structured format that can be processed by the application,
external tools, and large language models. This architectural change enables better integration with documentation systems and AI-assisted development workflows.

Migration

Existing JSON graphs will continue to work. The application automatically handles both formats. New graphs will be saved in the Markdown format by default.

Files Changed

  • Core serialization system updated for Markdown format
  • Enhanced GUI rendering pipeline
  • Expanded test coverage for loading mechanisms

Full Changelog: v0.5.0...v0.6.0

  • Implement Hybrid Execution Model for Interactive PyFlowGraph Applications
  • PR: #28
  • Flow format

v0.5.0

12 Aug 14:31

Choose a tag to compare

🎯 Major New Features

🔄 Hybrid Execution Model

This release introduces a revolutionary dual execution system that transforms PyFlowGraph from a
simple visual scripting tool into a powerful platform for building interactive applications:

  • 🔨 Batch Mode: Traditional execution where the entire graph runs sequentially based on data
    dependencies
  • ⚡ Live Mode: Interactive execution with real-time event handling and persistent state for building
    interactive applications, games, and dynamic tools

🎮 Event-Driven Interactive System

A complete event management system enabling truly interactive node-based applications:

  • Button Click Events: Create interactive buttons within nodes
  • Timer Events: Scheduled execution and periodic updates
  • Value Change Events: Reactive programming patterns
  • User Input Events: Real-time user interaction handling
  • Custom Triggers: Extensible event system for any use case

● 📚 New Example Graphs

This release completely refreshes the example library with 9 brand new graphs showcasing modern
capabilities:

  • 🎮 interactive_game_engine.json - Fully interactive game with event-driven mechanics
  • 📊 data_analysis_dashboard.json - Interactive data visualization dashboard
  • 📁 file_organizer_automation.json - Automated file organization system
  • 🔐 password_generator_tool.json - Secure password generation utility
  • 💰 personal_finance_tracker.json - Personal finance management system
  • 🍳 recipe_nutrition_calculator.json - Recipe analysis and nutrition calculator
  • 📱 social_media_scheduler.json - Social media content scheduling tool
  • 📝 text_processing_pipeline.json - Advanced text processing workflow
  • 🌤️ weather_data_processor.json - Weather data analysis and processing

● 🔧 Improvements & Bug Fixes

✨ Enhanced User Experience

  • 🏷️ Dynamic Window Titles: Window title automatically updates to display the current graph name
  • 🌍 UTF-8 File Support: Improved international character support for all file operations
  • 🎨 Enhanced UI Polish: Various UI improvements and visual refinements

🛠️ Technical Improvements

  • 📁 Enhanced Execution Flow Control: Improved data handling and flow management in graph execution
  • 🔒 Robust File Operations: All save/load operations now use UTF-8 encoding for better reliability
  • ⚙️ Code Quality: Various internal improvements and optimizations
    ● 📋 Usage Guide

Getting Started with Live Mode

  1. Load an Interactive Example: Try interactive_game_engine.json from the examples folder
  2. Select Live Mode: Choose "Live" from the execution mode dropdown
  3. Start Live Mode: Click "Start Live Mode" to activate interactive execution
  4. Interact: Use buttons and controls within nodes to trigger execution events
  5. Build: Create your own interactive applications using the event system

Batch Mode (Traditional)

  • Perfect for data processing pipelines, automation scripts, and traditional workflows
  • Press F5 or "Execute Graph" to run the entire graph at once
  • All existing graphs continue to work exactly as before

🔄 Breaking Changes & Migration

⚠️ Example Graph Changes

  • Old examples removed: Previous example graphs have been replaced with new, more comprehensive
    demonstrations
  • Backward compatibility: All existing user graphs remain fully compatible
  • Migration: No migration required for existing projects

🎉 What's Next?

This release positions PyFlowGraph as a unique platform for building interactive, node-based
applications. The hybrid execution model opens up possibilities for:

  • Interactive Dashboards and data visualization tools
  • Educational Applications with step-by-step execution
  • Game Development with visual scripting
  • Automation Tools with user interaction
  • Prototyping Platforms for rapid development

● ---
📥 Download Instructions

Pre-compiled Windows Release

  1. Download PyFlowCanvas_Windows_v0.5.0.zip from the assets below
  2. Extract the ZIP file to your preferred location
  3. Run main.exe to start the application
  4. Try the new interactive examples in the examples/ folder!

Source Code Installation

  git clone https://github.com/bhowiebkr/PyFlowGraph.git
  cd PyFlowGraph
  python3 -m venv venv
  # Linux/macOS: source venv/bin/activate
  # Windows: venv\Scripts\activate
  pip install PySide6
  ./run.sh  # or run.bat on Windows

What's Changed

Full Changelog: v0.4.0...v0.5.0

v0.4.0

11 Aug 15:49
5100267

Choose a tag to compare

What's Changed

Many small bugs with the interface, nodes can now be resized, mouse panning is cleaned up. GUI has persistent settings. GUI remembers the last loaded file including the pan and zoom location for the file. copying nodes, connections, reroutes can be pasted into a text editor to get the json description of what was selected.

Full Changelog: v0.3.1...v0.4.0

v0.3.1

10 Aug 05:32

Choose a tag to compare

What's Changed


Type primitives hardcoded are now removed. A node's Pin type is determined through type hints on the main execution function. Only node pins that have the same type hints can be connected. color is determined by hashing the type name and using that to generate the hex color.