SpiffWorkflow is a software development platform for building, running, and monitoring executable diagrams https://www.spiffworkflow.org/
Go to file
jasquat 3f6fb4d9f5 Feature/pin spiff in ci (#428)
* attempt to use the locked version of SpiffWorkflow in ci w/ burnettk

* fixed regex for spiffworkflow revision replacement

* make sure we also update the lockfile when getting new spiff

* install poetry before we attempt to update hte pyproject

* hardcoding spiffworkflow revision as a test w/ burnettk

* try running tests in ci from bash script w/ burnettk

* print working dir in ci w/ burnettk

* fixed location of instance dir w/ burnettk

* run with mysql in ci

* run typeguard with bash script as well w/ burnettk

* fixed postgres test w/ burnettk

* clean up github action file w/ burnettk

* fixed postgres test again w/ burnettk

* pyl

* attempt to remove nox from ci completely

* omit safety for now to test coverage

* fixed how coverage is being called from not nox

* allow running safety and macos again

* renamed run_not_nox to run_ci_session w/ burnettk

* attempt to only upload if matrix says to w/ burnettk

* attempt to install mysqlclient prereqs for mac and remove noxfile stuff w/ burnettk

* added back the constraints file w/ burnettk

* moved the contributing file to the root of arena w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-03 11:49:30 -04:00
.github Feature/pin spiff in ci (#428) 2023-08-03 11:49:30 -04:00
bin Revert "Feature/event payloads (#393)" 2023-07-19 11:44:06 -04:00
connector-proxy-demo select intiator in filters when you don't have permission to search users. 2023-03-13 11:50:18 -04:00
docs updating structure with proper file names (#422) 2023-08-01 08:42:58 -04:00
spiffworkflow-backend Feature/pin spiff in ci (#428) 2023-08-03 11:49:30 -04:00
spiffworkflow-frontend column names for tables in frontend should only have the first letter… (#425) 2023-08-02 14:06:19 +05:30
.darglint added some base stuff to get pyl working 2022-10-27 09:15:56 -04:00
.flake8 pyl and turn back on autoreload for homepage w/ burnettk 2023-04-13 16:56:49 -04:00
.gitignore Editor compose (#279) 2023-05-25 15:15:58 -04:00
.pre-commit-config.yaml Typeahead datastore (#321) 2023-06-09 12:28:59 -07:00
.readthedocs.yaml use requirements.txt for readthedocs build. 2023-05-18 11:26:47 -04:00
.tool-versions Move to Python 3.11 (#27) 2022-11-09 13:45:16 -05:00
CONTRIBUTING.rst Feature/pin spiff in ci (#428) 2023-08-03 11:49:30 -04:00
Jenkinsfile ci: sent Discord notifications for all builds 2023-06-01 20:16:17 +02:00
LICENSE Initial commit 2022-10-12 10:17:40 -04:00
README.md update setup steps 2023-05-22 09:31:08 -07:00
docker-compose.yml use sqlite for docker compose db and use a volume so data persists w/ burnettk 2023-06-01 16:36:37 -04:00
editor.docker-compose.yml Set auth off, doesn't pass permissions (#327) 2023-06-12 10:15:25 -07:00
poetry.lock let ruff sort imports and ditch duplicative pre-commit linters 2023-05-26 20:01:08 -04:00
pyproject.toml let ruff sort imports and ditch duplicative pre-commit linters 2023-05-26 20:01:08 -04:00

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.