BPMN Studio ist eine Desktop- und Web-Applikation zum Erstellen, Verwalten, Ausführen und Auswerten von BPMN-Prozessen, implementiert in Electron, Aurelia & TypeScript.
BPMN Studio soll es dem Anwender so leicht wie möglich machen BPMN-Diagramme zu erstellen und zu pflegen. Des Weiteren bringt BPMN Studio eine Workflow Engine mit, um diese Diagramme auszuführen.
Es stehen Releases von BPMN Studio für Windows und macOS zum Download bereit.
Ein Docker-Image des kompletten Bundles (BPMN Studio & ProcessEngine Runtime) wird auf Docker Hub bereitgestellt.
- Node active LTS
- Python
TL;DR
npm install
npm run build
npm start
/npm run start_dev
Notizen:
-
Für
npm run electron-build-<OS>
gilt:Für den Platzhalter
<OS>
können folgende Werte eingesetzt werden:macos
für MacOSwindows
für Windows
Beispiel:
npm run electron-build-macos
TL;DR Tests
npm start
npm run electron-build-<OS>
npm test
Die Abhängigkeiten werden wie folgt installiert:
npm install
Zum builden:
npm run build
Dieses Skript buildet die Anwendung, das Ergebnis ist produktionsreif.
Zum starten:
npm start
Dieses Skript startet die statische Auslieferung der Anwendung auf Port 17290. Zuerst muss die Anwendung gebaut worden sein.
Es ist möglich einen anderen Port zu spezifizieren:
npm start -- --port 9000
Das startet das BPMN Studio auf Port 9000.
Anmerkung
Der Port muss aus technischen Gründen zwischen 1000 und 65535 liegen.
Erreichbarkeit
Es ist möglich eine andere IP-Adresse als 127.0.0.1 zu spezifizieren:
npm start -- --host 0.0.0.0
Damit ist das BPMN Studio auch von außen erreichbar.
Zum starten (Entwicklung)
npm run start_dev
Dieses Skript startet die Auslieferung der Anwendung für die Entwicklung. Bei Änderungen im Quelltext wird die Anwendung neugebaut und der Webbrowser automatisch neu geladen.
Zum builden:
Mac:
npm run electron-build-macos
Nach dem Builden befindet sich die fertige Applikation im dist/electron/mac
Ordner.
Windows:
Vor dem ersten Build müssen die windows-build-tools installiert werden:
npm --vs2015 install --global windows-build-tools
Danach kann gebuildet werden:
npm run electron-build-windows
Der Buildvorgang generiert im dist/electron/
Ordner die Datei bpmn-studio-setup-<VERSION>.exe
.
Diese kann zur Installation der Applikation genutzt werden;
<VERSION>
entspricht dabei der Version, in welcher die Applikation installiert wird.
Beispiel:
dist/electron/bpmn-studio-setup-5.7.0.exe
Das Image lässt sich wie folgt builden:
docker build --tag bpmn-studio:latest .
Es ist möglich, das base image, sowie die Paketversionen anzupassen:
node_version
: Base image version mit NodeJS und Alpine Linux
docker build --build-arg node_version=10-alpine \
--tag bpmn-studio:latest.
Der Container lässt sich mit folgendem Befehl starten:
docker run -p 9000:9000 bpmn-studio:latest
Anschließend lässt sich das BPMN Studio unter URL http://localhost:17290
aufrufen.
Es sind Skripte in der package.json
vordefiniert, welche
sich durch npm run <script name>
ausführen lassen.
Die folgenden Skripte, werden in unserem Tooling verwendet:
-
build
Baut alles, was zum Ausführen der Webversion, der Electron-Dev App und der Tests notwendig ist.
-
reinstall
Entfernt die aktuell installierten Abhängigkeiten, installiert diese neu und baut die komplette Anwendung.
-
reset
Entfernt alle aktuell installierten Abhängigkeiten.
-
start
Startet die BPMN Studio Webanwendung.
-
start_dev
Startet die BPMN Studio Webanwendung und trackt die Quelldatein (geänderte Quelltextdatein werden neu transpiliert und die Webanwendung wird neu geladen).
-
electron-start-dev
Baut das Aurelia Bundle und startet die Electron Anwendung.
-
lint
Startet
eslint
für das gesamte Projekt. -
electron-build-macos
Baut die Electron-Anwendung für macOS.
-
electron-build-windows
Baut die Electron-Anwendung für Windows.
-
test
Führt die Spectron Tests für das BPMN Studio in Electron aus.
-
test-electron
Baut die Tests und führt diese mit der gebauten BPMN Studio App aus.
-
test-electron-macos
Führt die Tests in der Electron Dev Variante auf macOS aus.
test-electron-windows
Führt die Tests in der Electron Dev Variante auf Windows aus.
Die Konfiguration liegt unter aurelia_project/environments/dev.ts
.
Alexander Kasten Christian Werner René Föhring Steffen Knaup