.NET Core/.NET5/.NET6 開源專案彙總3:工作流元件

張傳寧發表於2021-06-22

開源專案是眾多組織與個人分享的元件或專案,作者付出的心血我們是無法體會的,所以首先大家要心存感激、尊重。請嚴格遵守每個專案的開源協議後再使用。尊重智慧財產權,共建和諧開源社群。

ELSA

Elsa Core是一個工作流庫,支援在任何.NET Core應用程式中執行工作流。工作流不僅可以使用程式碼定義,還可以定義為JSON、YAML或XML。

  • 設計器。提供了一個設計器:Elsa Designer 用於通過視覺化方式定製流程。
  • 持久化。工作流幾乎可以使用任何儲存機制持久化。將支援以下提供程式:
    • In Memory
    • File System
    • SQL Server
    • MongoDB
    • CosmosDB

Elsa對長期執行的工作流具有本機支援。一旦工作流因為某些阻塞活動而停止,工作流就會被持久化。當發生適當的事件時,工作流將從儲存載入並恢復。

Elsa的主要目標之一是以最小的工作量和最大的可擴充套件性在任何.NET應用程式中啟用工作流。這意味著將工作流功能整合到您的應用程式中應該很容易。

Gitee:https://gitee.com/imlyqmayun/elsa-core

Workflow-Core

Workflow-Core是一個基於.NET Standard的輕量級工作流引擎,目前有超過3100+個star。它提供了FluentAPI、多工、持久化以及並行處理的功能,適合於小型工作流、責任鏈的需求開發。

由於Workflow-Core支援工作流長期執行,因此Workflow-Core支援以下多種資料來源格式的持久化,可以通過安裝不同的Provider包來實現對應的持久化:

  • (預設提供,用於測試和開發)記憶體
  • MongoDB
  • MS SQL Server
  • MySql
  • Sqlite
  • Redis
  • PostgreSQL

GitHub:https://github.com/danielgerlag/workflow-core

mxGraph

mxGraph包包含一個用JavaScript編寫的客戶端軟體,以及各種語言的一系列後端(.NET、Java、PHP)。客戶端軟體是一個圖形元件,它具有可選的應用程式包裝器,該應用程式包裝器整合到現有的web介面中。客戶端需要Web伺服器將所需檔案傳遞給客戶端,或者可以在沒有webserver的情況下從本地檔案系統執行。後端可以原樣使用,也可以以支援的語言之一嵌入到現有伺服器應用程式中。

如果存在後端,則可以將客戶端配置為以各種方式使用此後端,例如:

  • 建立影像
  • 儲存和載入圖表
  • 建立圖形的物件表示

上面的場景可能以各種方式組合,例如在發生更改時將每個更改的XML描述傳送到後端,或者自動儲存圖表以避免客戶端上的資料丟失。客戶機也可以在離線模式下執行,不需要後端或Web伺服器。

Visor.js
.NET Core/.NET5/.NET6 開源專案彙總3:工作流元件

Visor.js 基於JjQuery,在Canvas上製作線上繪圖應用的核心基礎檔案。它支援滑鼠的拖拽移動,伸縮,旋轉和各種事件。

VFD

VFD基於Vue + Ant Design Vue +JSPlumb,作為一款流程設計器元件,可作為流程圖、泳道圖等繪圖工具,皮膚元件佈局合理,功能強大,操作方便快捷(可拖拽且快捷鍵豐富),儲存後為一段json資料,便於儲存及控制版本,也可儲存為圖片,安裝使用方便,整合難度較小,有交流群。

.NET Core/.NET5/.NET6 開源專案彙總3:工作流元件

Gitee:https://gitee.com/yjblogs/VFD

Easy-Flow

easy-flow 基於VUE+ElementUI+JsPlumb的流程設計器,通過 vuedraggable 外掛來實現節點拖拽。

.NET Core/.NET5/.NET6 開源專案彙總3:工作流元件

.NET Core/.NET5/.NET6 開源專案彙總3:工作流元件

.NET Core/.NET5/.NET6 開源專案彙總3:工作流元件

功能介紹

  • 支援拖拽新增節點
  • 點選線進行設定條件
  • 支援給定資料載入流程圖
  • 支援畫布拖拽
  • 支援連線樣式、錨點、型別自定義覆蓋
  • 支援力導圖

Gitee:https://gitee.com/xiaoka2017/easy-flow

相關文章