PyBreeze Modular Architecture Design

System Design · flowchart diagram · MIT

A modular architecture diagram for PyBreeze, an IDE built with PySide6, detailing its core editor, automation tools, executors, and utility modules.

Source: https://github.com/Integration-Automation/PyBreeze/blob/65aa9f9fee91003b82d355b7f15b599e1d4cb6a5/README/README_zh-CN.md
Curated by Integration-Automation
PyBreeze IDE PySide6 Python System Architecture Flowchart Automation

Mermaid source

flowchart TB
    UI["PyBreeze UI · PySide6"]

    subgraph Editor["JEditor 基础编辑器"]
        direction LR
        E1["代码编辑器 + 标签页"]
        E2["文件树"]
        E3["语法高亮"]
        E4["插件系统"]
    end

    subgraph Automation["自动化菜单"]
        direction LR
        A1["APITestka"]
        A2["AutoControl"]
        A3["WebRunner"]
        A4["LoadDensity"]
        A5["FileAutomation"]
        A6["MailThunder"]
        A7["TestPioneer"]
    end

    subgraph Executors["子进程执行器 · TaskProcessManager"]
        direction LR
        X1["je_api_testka"]
        X2["je_auto_control"]
        X3["je_web_runner"]
        X4["je_load_density"]
        X5["automation-file"]
        X6["je-mail-thunder"]
        X7["test_pioneer"]
    end

    subgraph Tools["工具"]
        direction LR
        T1["SSH · paramiko"]
        T2["AI 代码审查"]
        T3["CoT 提示词编辑器"]
        T4["Skill 提示词编辑器"]
        T5["Skill Send GUI"]
        T6["架构图编辑器"]
        T7["JupyterLab"]
    end

    subgraph Install["安装菜单"]
        direction LR
        I1["模块安装器"]
        I2["构建工具"]
    end

    UI --> Editor
    UI --> Automation
    UI --> Tools
    UI --> Install

    A1 --> X1
    A2 --> X2
    A3 --> X3
    A4 --> X4
    A5 --> X5
    A6 --> X6
    A7 --> X7

What this diagram shows

This diagram illustrates the modular architecture of PyBreeze, an integrated development environment (IDE). It details the main UI built with PySide6, the core JEditor with its components (code editor, file tree, syntax highlighting, plugin system), various automation modules (APITestka, AutoControl, WebRunner, LoadDensity, FileAutomation, MailThunder, TestPioneer), their corresponding subprocess executors, and additional tools like SSH, AI code review, prompt editors, architecture diagram editor, and JupyterLab. It also includes an installation menu.

When to use it

Use this diagram to understand the high-level structure of an IDE, particularly one with a plugin-based, modular design. It's useful for developers looking to contribute to PyBreeze, integrate new features, or understand how different components interact within a complex application. It also serves as a reference for designing similar extensible desktop applications.

How to adapt it for your project

To adapt this diagram, you can modify the 'Automation' and 'Tools' subgraphs to reflect specific functionalities of your application. Add or remove executors based on the external tools or services your system integrates. The 'JEditor' subgraph can be customized to show different core IDE features. You can also change the UI framework from PySide6 to another GUI toolkit like PyQt, Kivy, or Electron.

Key concepts