PyLine 项目概述

PyLine 是一个基于 Python + Flask + React + MongoDB 的可视化工作流编辑器,用于创建和管理复杂的业务流程。

核心功能

  • 可视化编辑器: 基于 React Flow 的拖拽式流程设计器

  • 节点管理: 支持多种节点类型和条件表达式

  • 路由管理: 复杂流程的路由规划和依赖管理

  • 版本控制: 集成 Git 进行流程版本管理

  • RESTful API: 完整的 API 接口支持

技术栈

后端

  • Python 3.9+

  • Flask RESTx

  • MongoDB

  • NetworkX

  • GitPython

前端

  • React 18+

  • Ant Design

  • React Flow

  • Monaco Editor

文档

  • Sphinx

  • Markdown (myst-parser)

  • sphinx-rtd-theme

架构设计

PyLine 采用前后端分离架构,通过 RESTful API 进行通信:

  1. 前端: 负责流程的可视化编辑和展示

  2. 后端: 处理业务逻辑、数据存储和版本控制

  3. 数据库: MongoDB 存储流程定义和元数据

快速开始

本地开发

  1. 克隆仓库

  2. 启动 MongoDB

  3. 运行后端服务

  4. 运行前端开发服务器

Docker 部署

使用 docker-compose 一键部署:

docker-compose up -d