项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-09-14 · 当前星标 ★ 1483
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- 一个可运行 TypeScript 的前端 Web 工程
- 现代浏览器或移动设备(设计器兼容两者)
- 项目中能引入 JS/TS 与 CSS 文件
- 可选:Angular、React 或 Svelte 工程(官方提供对应示例)
安装与启动步骤
-
1准备前端工程
该设计器是纯 TypeScript 编写的纯前端组件,需放进一个可运行 TS 的 Web 应用中,无需任何后端服务。
-
2安装依赖包
README 安装章节只说明把 JS/TS 和 CSS 文件加入项目,包名取自 Usage 示例的 import 语句。
npm install sequential-workflow-designer -
3准备画布容器
在页面中放置一个容器元素,示例使用 id 为 placeholder 的节点作为设计器挂载点。
const placeholder = document.getElementById('placeholder'); -
4定义工作流模型
按 README 结构准备 definition:properties 放根属性,sequence 数组放步骤列表,整体可序列化为 JSON。
const definition = { properties: { myProperty: 'my-value' }, sequence: [] }; -
5编写配置对象
configuration 中所有字段均为可选;theme 默认 light,isReadonly 默认 false,undoStackSize 默认 0 即禁用撤销。
const configuration = { theme: 'light', isReadonly: false, undoStackSize: 10 }; -
6创建设计器实例
导入 Designer 并调用 Designer.create 把定义与配置挂载到容器上,页面即出现流程画布。
import { Designer } from 'sequential-workflow-designer'; const designer = Designer.create(placeholder, definition, configuration); -
7监听定义变更
订阅 onDefinitionChanged 事件,在用户拖拽、新增或删除步骤时拿到最新定义并自行保存。
designer.onDefinitionChanged.subscribe(event => { // ... });
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
theme | 否 | 切换外观主题,支持 light、dark、soft | light |
isReadonly | 否 | 只读模式开关,设为 true 后不可编辑流程 | false |
undoStackSize | 否 | 撤销栈大小,0 为禁用,1 及以上启用撤销 | 10 |
toolbox | 否 | 左侧步骤工具箱,设为 false 可隐藏 | false |
editors | 否 | 根节点与步骤的属性编辑器面板 | false |
controlBar | 否 | 底部控制栏,设为 false 可隐藏 | true |
如何确认成功
页面出现流程图设计器画布,拖拽或增删步骤时 onDefinitionChanged 回调被触发,即表示接入成功。
常见问题
Q:这个设计器需要绑定后端或工作流引擎吗?
A:不需要。它不与任何工作流引擎关联,完全通用,只负责编辑并以 JSON 存储流程定义,执行逻辑需要你接入自己的引擎。
Q:如何隐藏工具箱或属性编辑器等默认 UI?
A:把 configuration 中对应项设为 false 即可,例如 toolbox: false、editors: false、controlBar: false、contextMenu: false。
Q:支持哪些前端框架?
A:仓库提供 Angular、React 和 Svelte 的集成示例,同时兼容现代浏览器与移动设备。
Q:怎么自定义主题和节点图标?
A:theme 可切换 light、dark、soft;步骤图标通过 iconUrlProvider 回调按组件类型和步骤类型返回图标地址。
Q:工作流定义怎么保存?
A:定义是 JSON 结构,监听 designer.onDefinitionChanged 后自行提交到你的存储或后端即可。
注意事项
- README 未给出具体的 CSS 文件路径和包管理器命令,安装细节请以官方文档 nocode-js.com 为准。
- 设计器零外部依赖、使用 SVG 渲染,不会引入额外的运行时依赖。
- 流程定义以 JSON 存储,可自由对接任意后端与执行引擎。
- 更多用法可参考仓库 examples 目录与在线示例页面。
核心亮点
- 零外部依赖,打包体积可控,不污染宿主项目的依赖树
- 工作流模型可序列化为 JSON,便于持久化与对接自研执行引擎
- 支持自定义节点、主题、图标与校验,能贴合品牌与业务语义
不足之处
- 仅提供设计器 UI,不含流程执行引擎,运行时需自行实现
- 复杂嵌套流程与大规模节点下的画布性能表现有待验证
适用场景
- 低代码平台中让业务人员拖拽配置审批或数据处理流程
- AI Agent 编排界面,用可视化节点串联模型调用与工具步骤
- 自动化运维/营销工具里配置触发条件与任务执行链路
替代项目
react-flow、bpmn-js
同类项目推荐
jianhao-travel-planner
开源
联网查证再成稿,旅行攻略能直接照着走
出行路书工作流 skill:联网实查 + 多源交叉验证,产出可核验、能执行的旅行攻略。覆盖吃住···
dalle-flow
开源
让AI画图听你的,一步步调出高清大片
A Human-in-the-Loop workflow for creating HD images from text
EasyCLIProxyAPI
开源
图形界面一键配好 AI 代理,省去手写配置文件
A desktop GUI for CLIProxyAPI and a tool for automatically configuring popular AI ag···
AI-Canvas-tauri
开源
本地画布串起 AI 短剧从分镜到成片
AI画布:免费、轻量的本地 AI 创作工具,面向 AI短剧、图像与视频创作。集成无限画布、Com···
playwright
开源
用 PHP 直接驱动真实浏览器做测试和抓取
Playwright PHP library for browser automation: navigation, E2E tests, assertions, sc···
opentabs
开源
让AI直接操控浏览器,点击按钮的同时调用API完成业务闭环。
Browser automation clicks buttons. OpenTabs calls APIs.
optio
开源
把多个 AI 编码 Agent 编排成流水线,自动接力干活
Workflow orchestration for AI agent swarms.
fsearch
开源
整盘文件秒搜,模糊拼错也能找到
Whole-disk file search for macOS: fuzzy names, typo tolerance, indexed content grep.···
cli
开源
一条命令把端到端测试搬进终端和 CI
QA Wolf from anywhere — your terminal, your CI, your AI agent.
