[PR #1483] [MERGED] update: v0.0.2 for plugin flow_map-0.0.2.difypkg[Added free layout fl… #1639

Closed
opened 2026-02-22 18:03:46 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/langgenius/dify-plugins/pull/1483
Author: @sawyer-shi
Created: 10/31/2025
Status: Merged
Merged: 11/3/2025
Merged by: @crazywoola

Base: mainHead: main


📝 Commits (1)

  • d05ba3a update: v0.0.2 for plugin flow_map-0.0.2.difypkg[Added free layout flowchart functionality, fixed bugs from previous versions, improved software stability and reliability.]

📊 Changes

1 file changed (+0 additions, -0 deletions)

View changed files

sawyer-shi/flow_map/flow_map-0.0.2.difypkg (+0 -0)

📄 Description

FlowMap - Advanced Flowchart Generator Plugin for Dify

Author: sawyer-shi
Email: sawyer36@foxmail.com
Version: 0.0.2
Type: Dify Plugin
Repository: GitHub

Version Information

  • Current Version: v0.0.2
  • Release Date: 2025-10-18
  • Compatibility: Dify Plugin Framework
  • Python Version: 3.12+

Version History

  • v0.0.2 (2025-10-18): Added free layout flowchart functionality, fixed bugs from previous versions, improved software stability and reliability.
  • v0.0.1 (2025-09-12): Initial release with smart branch detection, colorful arrow labels, and advanced layout optimization

Description

A powerful flowchart generation plugin that converts Mermaid syntax to beautiful, intelligent flowcharts with advanced layout optimization and branch-aware positioning.

Key Features

  • 🎨 Intelligent Layout System

    • Smart branch detection and free layout for complex flowcharts
    • Grid layout for linear processes
    • Automatic canvas sizing to prevent element overflow
  • 📐 Multiple Layout Directions

    • Left-to-right layout (LR)
    • Top-to-bottom layout (TB)
    • Branch-aware positioning
  • 🌈 Colorful Arrow Labels

    • Intelligent color mapping based on label semantics
    • Support for Chinese and English labels
    • Customizable color themes
  • 📝 Dual Format Support

    • Full Mermaid syntax support with labeled arrows
    • Markdown list conversion
    • Automatic text type detection
  • 🎭 Rich Themes

    • Modern theme with gradient effects
    • Business professional theme
    • Classic minimalist theme
    • Custom theme support
  • 🔧 Local Processing

    • Local Generation: Mind maps generated locally, no API Key required, no external network or services needed
    • Secure & Reliable: Data stays private, completely offline processing, protects user privacy
    • No external API dependencies
    • Fast generation with matplotlib
    • Privacy-focused design
    • High-quality PNG output

🚀 Quick Start

  1. Download from Dify Plugin Marketplace

    • Go to Dify Plugin Marketplace
    • Search and download flow_map plugin
    • Enable FlowMap plugin in your workspace
  2. LLM Integration

    • Add an LLM node in your Dify workflow
    • Use the simplest prompt: "Summarize user input #context# into Mermaid flowchart text format"
    • Connect LLM output to FlowMap plugin input

Basic Usage Examples

flow_map_en_a_01 flow_map_en_c_01

Top-to-bottom layout
flow_map_en_a_02
flow_map_en_c_03

Left-to-right layout
flow_map_en_a_03
flow_map_en_c_02

📚 API Reference

Mermaid Left-Right Tool

Input Parameters:

  • text (string, required): Mermaid syntax flowchart text
  • theme (string, optional): Theme name (modern/business/classic)

Output:

  • Success: PNG image + text summary
  • Format: "Successfully generated left-right layout flowchart. File size: X.XXM. Contains X nodes and X connections."

Mermaid Top-Bottom Tool

Input Parameters:

  • text (string, required): Mermaid syntax flowchart text
  • theme (string, optional): Theme name (modern/business/classic)

Output:

  • Success: PNG image + text summary
  • Format: "Successfully generated top-bottom layout flowchart. File size: X.XXM. Contains X nodes and X connections."

🛠️ Advanced Features

Smart Branch Detection

The plugin automatically detects branching scenarios in your flowchart and switches layout algorithms:

  • Linear Flow: Uses grid layout for optimal alignment
  • Branching Flow: Uses free layout to prevent overlap

Theme Customization

Available themes with different visual styles:

  • Modern: Clean design with gradients
  • Business: Professional corporate style
  • Classic: Traditional minimalist look

🔧 Development

Project Structure

flow_map/
├── tools/                  # Core tools implementation
│   ├── mermaid_lr.py      # Left-right layout tool
│   ├── mermaid_tb.py      # Top-bottom layout tool
│   └── optimized_layout.py # Advanced layout engine
├── provider/              # Provider configurations
├── test/                  # Comprehensive tests
├── manifest.yaml          # Plugin manifest
├── main.py               # Entry point
└── README.md             # Documentation

🔍 Technical Details

Branch-Aware Layout Algorithm

  • Branch Detection: Automatically identifies decision nodes with multiple outgoing connections
  • Free Layout: Hierarchical positioning based on connection levels
  • Canvas Adaptation: Dynamic canvas sizing (up to 2.5x node count)
  • Collision Avoidance: Smart spacing with 70% effective area usage

Performance Optimization

  • Matplotlib Backend: High-quality vector graphics
  • Memory Efficient: Local processing without external APIs
  • Fast Rendering: Optimized for complex flowcharts

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🤝 Support

If you encounter any issues or have questions:

  1. 📖 Check the documentation
  2. 🔍 Search existing issues on GitHub
  3. 🆕 Create a new issue with detailed description
  4. 💬 Join our community discussions
  5. 📧 Email: sawyer36@foxmail.com

🙏 Acknowledgments

  • Matplotlib team for the excellent plotting library
  • Mermaid.js community for inspiration
  • Dify platform for the plugin framework

…owchart functionality, fixed bugs from previous versions, improved software stability and reliability.]

Plugin Submission Form

1. Metadata

  • Plugin Author:
  • Plugin Name:
  • Repository URL:

2. Submission Type

  • New plugin submission
  • Version update for existing plugin

3. Description

4. Checklist

  • I have read and followed the Publish to Dify Marketplace guidelines
  • I have read and comply with the Plugin Developer Agreement
  • I confirm my plugin works properly on both Dify Community Edition and Cloud Version
  • I confirm my plugin has been thoroughly tested for completeness and functionality
  • My plugin brings new value to Dify

5. Documentation Checklist

Please confirm that your plugin README includes all necessary information:

  • Step-by-step setup instructions
  • Detailed usage instructions
  • All required APIs and credentials are clearly listed
  • Connection requirements and configuration details
  • Link to the repository for the plugin source code

6. Privacy Protection Information

Based on Dify Plugin Privacy Protection Guidelines:

Data Collection

Privacy Policy

  • I confirm that I have prepared and included a privacy policy in my plugin package based on the Plugin Privacy Protection Guidelines

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/langgenius/dify-plugins/pull/1483 **Author:** [@sawyer-shi](https://github.com/sawyer-shi) **Created:** 10/31/2025 **Status:** ✅ Merged **Merged:** 11/3/2025 **Merged by:** [@crazywoola](https://github.com/crazywoola) **Base:** `main` ← **Head:** `main` --- ### 📝 Commits (1) - [`d05ba3a`](https://github.com/langgenius/dify-plugins/commit/d05ba3a13b0a38146adb7e43d5f927f3dd7837e9) update: v0.0.2 for plugin flow_map-0.0.2.difypkg[Added free layout flowchart functionality, fixed bugs from previous versions, improved software stability and reliability.] ### 📊 Changes **1 file changed** (+0 additions, -0 deletions) <details> <summary>View changed files</summary> ➕ `sawyer-shi/flow_map/flow_map-0.0.2.difypkg` (+0 -0) </details> ### 📄 Description # FlowMap - Advanced Flowchart Generator Plugin for Dify **Author:** sawyer-shi **Email:** sawyer36@foxmail.com **Version:** 0.0.2 **Type:** Dify Plugin **Repository:** [GitHub](https://github.com/sawyer-shi/dify-plugins-flow_map) ### Version Information - **Current Version**: v0.0.2 - **Release Date**: 2025-10-18 - **Compatibility**: Dify Plugin Framework - **Python Version**: 3.12+ #### Version History - **v0.0.2** (2025-10-18): Added free layout flowchart functionality, fixed bugs from previous versions, improved software stability and reliability. - **v0.0.1** (2025-09-12): Initial release with smart branch detection, colorful arrow labels, and advanced layout optimization ## Description A powerful flowchart generation plugin that converts Mermaid syntax to beautiful, intelligent flowcharts with advanced layout optimization and branch-aware positioning. ## ✨ Key Features - 🎨 **Intelligent Layout System** - Smart branch detection and free layout for complex flowcharts - Grid layout for linear processes - Automatic canvas sizing to prevent element overflow - 📐 **Multiple Layout Directions** - Left-to-right layout (LR) - Top-to-bottom layout (TB) - Branch-aware positioning - 🌈 **Colorful Arrow Labels** - Intelligent color mapping based on label semantics - Support for Chinese and English labels - Customizable color themes - 📝 **Dual Format Support** - Full Mermaid syntax support with labeled arrows - Markdown list conversion - Automatic text type detection - 🎭 **Rich Themes** - Modern theme with gradient effects - Business professional theme - Classic minimalist theme - Custom theme support - 🔧 **Local Processing** - **Local Generation**: Mind maps generated locally, no API Key required, no external network or services needed - **Secure & Reliable**: Data stays private, completely offline processing, protects user privacy - No external API dependencies - Fast generation with matplotlib - Privacy-focused design - High-quality PNG output ## 🚀 Quick Start 1. **Download from Dify Plugin Marketplace** - Go to Dify Plugin Marketplace - Search and download `flow_map` plugin - Enable FlowMap plugin in your workspace 2. **LLM Integration** ⭐ - Add an LLM node in your Dify workflow - Use the simplest prompt: **"Summarize user input #context# into Mermaid flowchart text format"** - Connect LLM output to FlowMap plugin input ### Basic Usage Examples <img width="1883" height="884" alt="flow_map_en_a_01" src="https://github.com/user-attachments/assets/9de1c2c2-8952-4282-8d06-3a3448bef01a" /> <img width="2139" height="633" alt="flow_map_en_c_01" src="https://github.com/user-attachments/assets/655b0c59-3035-4936-ac1c-8f23c28c3210" /> **Top-to-bottom layout** <img width="6453" height="5142" alt="flow_map_en_a_02" src="https://github.com/user-attachments/assets/52c7e645-4cd5-4fdd-a8df-c50b9740881e" /> <img width="15777" height="3418" alt="flow_map_en_c_03" src="https://github.com/user-attachments/assets/526ab72d-221d-40bc-be64-d402d2ae79e6" /> **Left-to-right layout** <img width="6453" height="5142" alt="flow_map_en_a_03" src="https://github.com/user-attachments/assets/b969e429-45fb-40d5-987d-ce8bd4d8c02f" /> <img width="7667" height="6874" alt="flow_map_en_c_02" src="https://github.com/user-attachments/assets/5ed9b3b4-5ca1-4171-8c5f-f04654c6efd5" /> ## 📚 API Reference ### Mermaid Left-Right Tool **Input Parameters:** - `text` (string, required): Mermaid syntax flowchart text - `theme` (string, optional): Theme name (modern/business/classic) **Output:** - Success: PNG image + text summary - Format: "Successfully generated left-right layout flowchart. File size: X.XXM. Contains X nodes and X connections." ### Mermaid Top-Bottom Tool **Input Parameters:** - `text` (string, required): Mermaid syntax flowchart text - `theme` (string, optional): Theme name (modern/business/classic) **Output:** - Success: PNG image + text summary - Format: "Successfully generated top-bottom layout flowchart. File size: X.XXM. Contains X nodes and X connections." ## 🛠️ Advanced Features ### Smart Branch Detection The plugin automatically detects branching scenarios in your flowchart and switches layout algorithms: - **Linear Flow**: Uses grid layout for optimal alignment - **Branching Flow**: Uses free layout to prevent overlap ### Theme Customization Available themes with different visual styles: - **Modern**: Clean design with gradients - **Business**: Professional corporate style - **Classic**: Traditional minimalist look ## 🔧 Development ### Project Structure ``` flow_map/ ├── tools/ # Core tools implementation │ ├── mermaid_lr.py # Left-right layout tool │ ├── mermaid_tb.py # Top-bottom layout tool │ └── optimized_layout.py # Advanced layout engine ├── provider/ # Provider configurations ├── test/ # Comprehensive tests ├── manifest.yaml # Plugin manifest ├── main.py # Entry point └── README.md # Documentation ``` ## 🔍 Technical Details ### Branch-Aware Layout Algorithm - **Branch Detection**: Automatically identifies decision nodes with multiple outgoing connections - **Free Layout**: Hierarchical positioning based on connection levels - **Canvas Adaptation**: Dynamic canvas sizing (up to 2.5x node count) - **Collision Avoidance**: Smart spacing with 70% effective area usage ### Performance Optimization - **Matplotlib Backend**: High-quality vector graphics - **Memory Efficient**: Local processing without external APIs - **Fast Rendering**: Optimized for complex flowcharts ## 📄 License This project is licensed under the MIT License - see the LICENSE file for details. ## 🤝 Support If you encounter any issues or have questions: 1. 📖 Check the documentation 2. 🔍 Search existing issues on GitHub 3. 🆕 Create a new issue with detailed description 4. 💬 Join our community discussions 5. 📧 Email: sawyer36@foxmail.com ## 🙏 Acknowledgments - Matplotlib team for the excellent plotting library - Mermaid.js community for inspiration - Dify platform for the plugin framework …owchart functionality, fixed bugs from previous versions, improved software stability and reliability.] # Plugin Submission Form ## 1. Metadata <!-- Please provide the following metadata of your plugin to make it easier for the reviewer to check the changes. - Plugin Author : The author of the plugin which is defined in your manifest.yaml - Plugin Name : The name of the plugin which is defined in your manifest.yaml - Repository URL: The URL of the repository where the source code of your plugin is hosted --> - **Plugin Author**: - **Plugin Name**: - **Repository URL**: ## 2. Submission Type - [ ] New plugin submission - [x] Version update for existing plugin ## 3. Description <!-- Please briefly describe the purpose of the new plugin or the updates made to the existing plugin --> ## 4. Checklist - [x] I have read and followed the Publish to Dify Marketplace guidelines - [x] I have read and comply with the Plugin Developer Agreement - [x] I confirm my plugin works properly on both Dify Community Edition and Cloud Version - [x] I confirm my plugin has been thoroughly tested for completeness and functionality - [x] My plugin brings new value to Dify ## 5. Documentation Checklist Please confirm that your plugin README includes all necessary information: - [x] Step-by-step setup instructions - [x] Detailed usage instructions - [x] All required APIs and credentials are clearly listed - [x] Connection requirements and configuration details - [x] Link to the repository for the plugin source code ## 6. Privacy Protection Information Based on Dify Plugin Privacy Protection [Guidelines](https://docs.dify.ai/plugins/publish-plugins/publish-to-dify-marketplace/plugin-privacy-protection-guidelines): ### Data Collection <!-- Does your plugin collect any user personal data? If yes, please list what types of user personal data are being collected according to the Plugin Privacy Protection Guidelines (for example: Email address, IP address, Age, etc) --> ### Privacy Policy - [x] I confirm that I have prepared and included a privacy policy in my plugin package based on the Plugin Privacy Protection Guidelines --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-22 18:03:46 -05:00
yindo closed this issue 2026-02-22 18:03:46 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify-plugins#1639