796dc9dbec
* added api and test to run a process model and return task data synchronously w/ burnettk * added test to make sure we can access db models from extensions api w/ burnettk * added extensions api to elevated permissions * fixed permission tests * do not add extensions permission to all permission for a pg or pm w/ burnettk * added configs for extensions api w/ burnettk * added the basis for an extensions list api w/ burnettk * added tests for extenstions api and do not use serialized as a property * allow giving a body to an extension when running and some support in frontend to use extensions * added ability to display markdown and rjsf on extensions page * added ability to submit the extension form and display the resulting task data * made frontend extension urls have 2 pieces of information so we can specify multiple routes for the same process-model w/ burnettk * do not save process instances when running extensions w/ burnettk * add extension input to a task not the process w/ burnettk * pyl w/ burnettk --------- Co-authored-by: jasquat <jasquat@users.noreply.github.com> Co-authored-by: burnettk <burnettk@users.noreply.github.com> |
||
---|---|---|
.github | ||
bin | ||
connector-proxy-demo | ||
docs | ||
spiffworkflow-backend | ||
spiffworkflow-frontend | ||
.darglint | ||
.flake8 | ||
.gitignore | ||
.pre-commit-config.yaml | ||
.readthedocs.yaml | ||
.tool-versions | ||
Jenkinsfile | ||
LICENSE | ||
README.md | ||
docker-compose.yml | ||
editor.docker-compose.yml | ||
poetry.lock | ||
pyproject.toml |
README.md
spiff-arena
SpiffArena is a low(ish)-code software development platform for building, running, and monitoring executable diagrams. It is intended to support Citizen Developers and to enhance their ability to contribute to the software development process. Using tools that look a lot like flow-charts and spreadsheets, it is possible to capture complex rules in a way that everyone in your organization can see, understand, and directly executable.
Please visit the SpiffWorkflow website for a Getting Started Guide to see how to run SpiffArena locally and try it out. There are also additional articles, videos, and tutorials about SpiffArena and its components, including SpiffWorkflow, Service Connectors, and BPMN.js extensions.
Contributing
This is a monorepo based on git subtrees that pulls together various spiffworkflow-related projects.
Feel free to ignore that and drop us a pull request.
If you need to push back from the monorepo to one of the individual repos, here's an example command (and find other scripts we use in the bin
directory):
git subtree push --prefix=spiffworkflow-frontend git@github.com:sartography/spiffworkflow-frontend.git add_md_file
Backend Setup
First install python and poetry, and then:
cd spiffworkflow-backend
poetry install
./bin/run_server_locally
Frontend Setup
First install nodejs, ideally the version in .tool-versions (but likely other versions will work). Then:
cd spiffworkflow-frontend
npm install
npm start
Run tests
./bin/run_pyl
Requires at root:
- .darglint
- .flake8
- .pre-commit-config.yaml
- pyproject.toml
Run cypress automated browser tests
Get the app running so you can access the frontend at http://localhost:7001 in your browser by following the frontend and backend setup steps above, and then:
./bin/run_cypress_tests_locally
License
SpiffArena's main components are published under the terms of the GNU Lesser General Public License (LGPL) Version 3.
Support
You can find us on our Discord Channel.
Commercial support for SpiffWorkflow is available from Sartography.