spiff-arena/docs/explanation/dev/technical_overview.md

40 lines
1.2 KiB
Markdown
Raw Normal View History

# Technical Overview
## Components
```mermaid
graph TD
subgraph spiff-arena
Backend
Frontend
end
subgraph Backend
subgraph SpiffWorkflow lib
end
end
subgraph Frontend
subgraph bpmn-js-spiffworkflow lib
end
end
Frontend -- uses REST API --> Backend
Backend -- delegates to --> C
Backend -- persists to --> DB
DB[(mysql/postgres)]
C[Connector Proxy]
```
SpiffArena is a system that allows users to build and execute BPMN diagrams.
It is composed of three applications, [spiffworkflow-frontend](frontend), [spiffworkflow-backend](backend_api), and, optionally, a [connector proxy](connector_proxy).
## Source code layout
From a source code perspective, there are three repositories that may be of interest:
- [spiff-arena](https://github.com/sartography/spiff-arena) - Includes spiffworkflow-frontend, spiffworkflow-backend, and connector-proxy-demo.
- [SpiffWorkflow](https://github.com/sartography/SpiffWorkflow) - The core SpiffWorkflow library, 10 years old, Python, awesome, [well-documented](https://spiffworkflow.readthedocs.io/).
- [bpmn-js-spiffworkflow](https://github.com/sartography/bpmn-js-spiffworkflow) - The frontend library that extends bpmn-js to work with SpiffWorkflow.
```{tags} reference, dev_docs
```