diff --git a/README.md b/README.md index e8cc5a3f..669b124e 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ strategy for building Low-Code applications. ## Build status [![SpiffWorkflow](https://github.com/sartography/SpiffWorkflow/actions/workflows/tests.yaml/badge.svg)](https://github.com/sartography/SpiffWorkflow/actions/workflows/tests.yaml) -[![Documentation Status](https://readthedocs.org/projects/spiffworkflow/badge/?version=latest)](http://spiffworkflow.readthedocs.io/en/latest/?badge=latest) +[![Documentation](https://img.shields.io/badge/docs-spiff.works-blue)](https://spiff.works/docs/spiffworkflow/) [![Issues](https://img.shields.io/github/issues/sartography/spiffworkflow)](https://github.com/sartography/SpiffWorkflow/issues) [![Pull Requests](https://img.shields.io/github/issues-pr/sartography/spiffworkflow)](https://github.com/sartography/SpiffWorkflow/pulls) @@ -45,7 +45,7 @@ _A complete list of the latest features is available with our [release notes](ht version 1.0._ ## Code Examples and Documentation -Detailed documentation is available on [ReadTheDocs](https://spiffworkflow.readthedocs.io/en/latest/) +Detailed documentation is available on [spiff.works](https://spiff.works/docs/spiffworkflow/). Also, checkout our [example application](https://github.com/sartography/spiff-example-cli), which we reference extensively from the Documentation. diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 3c33db9b..e20a3695 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,16 +1,16 @@ ## What's Changed Since the last release, we've continued to work on making SpiffWorkflow easier to use and internally consistent as well as -added a few new features to support [SpiffArena](https://www.spiffworkflow.org/). +added a few new features to support [SpiffArena](https://spiff.works/). ## Breaking Changes from 2.x: * We refactored task iteration to allow for greater flexibility in selecting tasks. Usage of `workflow.get_tasks` has changed. - See [Filtering Tasks](https://spiffworkflow.readthedocs.io/en/latest/bpmn/workflows.html#filtering-tasks) for documentation. + See [Filtering Tasks](https://spiff.works/docs/spiffworkflow/bpmn/workflows.html#filtering-tasks) for documentation. * We've continued to reorganize files in order to impose more structure on the package. Imports have changed (but we've added `__init__.py` files to make these reorganizations less painful in the future). See an overview of the package structure at - [What's in the BPMN Module](https://spiffworkflow.readthedocs.io/en/latest/bpmn/imports.html). -* We've simplified the BPMN serializer. [BPMN Serializer](https://spiffworkflow.readthedocs.io/en/latest/bpmn/serialization.html) + [What's in the BPMN Module](https://spiff.works/docs/spiffworkflow/bpmn/imports.html). +* We've simplified the BPMN serializer. [BPMN Serializer](https://spiff.works/docs/spiffworkflow/bpmn/serialization.html) ## Features and Improvements diff --git a/doc/bin/serve_docs b/doc/bin/serve_docs new file mode 100755 index 00000000..99d985cb --- /dev/null +++ b/doc/bin/serve_docs @@ -0,0 +1,49 @@ +#!/usr/bin/env bash +set -euo pipefail + +DOCS_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +HOST="${HOST:-127.0.0.1}" +PORT="${PORT:-8001}" + +case "${1:-}" in + -h|--help|help) + cat <&2 + echo "Usage: doc/bin/serve_docs" >&2 + exit 1 + ;; +esac + +if ! command -v uv >/dev/null 2>&1; then + echo "uv is required. Install it from https://docs.astral.sh/uv/." >&2 + exit 1 +fi + +cd "$DOCS_DIR" + +echo "Serving SpiffWorkflow docs at http://$HOST:$PORT" +echo "Source: $DOCS_DIR" + +exec uv run \ + --extra doc \ + --with sphinx-autobuild \ + sphinx-autobuild \ + --host "$HOST" \ + --port "$PORT" \ + . \ + _build/html diff --git a/doc/bpmn/camunda/index.rst b/doc/bpmn/camunda/index.rst index ef40a925..6617200c 100644 --- a/doc/bpmn/camunda/index.rst +++ b/doc/bpmn/camunda/index.rst @@ -5,7 +5,7 @@ Using the Camunda Configuration Module SpiffWorkflow does not aim to support all of Camunda's proprietary extensions. Many of of the items in the Camunda Properties Panel do not work. And major features of SpiffWorkflow (Messages, Data Objects, Service Tasks, Pre-Scripts, etc...) - can not be configured in the Camunda editor. Use `SpiffArena `_ + can not be configured in the Camunda editor. Use `SpiffArena `_ to build and test your BPMN models instead! Earlier users of SpiffWorkflow relied heavily on Camunda's modeler and several of our task spec diff --git a/doc/bpmn/script_engine.rst b/doc/bpmn/script_engine.rst index 566f6eee..7c54dc24 100644 --- a/doc/bpmn/script_engine.rst +++ b/doc/bpmn/script_engine.rst @@ -198,7 +198,7 @@ their parameters that can be displayed to a BPMN author in the Service Task conf hard-coding a list of services in `app.js `_ and as suggested, it would be reasonably straightforward to replace this with a API call. -`SpiffArena `_ has robust mechanisms for handling this that +`SpiffArena `_ has robust mechanisms for handling this that might serve as a model for you. How this all works is obviously heavily dependent on your application, so we won't go into further detail here, except @@ -496,4 +496,3 @@ To load this example: ./runner.py -e spiff_example.spiff.custom_exec add -p order_product \ -b bpmn/tutorial/{top_level_script,call_activity_script}.bpmn ./runner.py -e spiff_example.spiff.custom_exec - diff --git a/doc/index.rst b/doc/index.rst index 7685089f..2dc9ada0 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -16,7 +16,7 @@ What is SpiffWorkflow? .. image:: images/logo.png :align: center - :target: https://www.spiffworkflow.org + :target: https://spiff.works **SpiffWorkflow is a library that provides a flexible workflow execution environment.** @@ -27,12 +27,12 @@ this core. Extensive documentation about BPMN and how SpiffWorkflow interprets it, as well as information about custom extensions implemented in the :code:`spiff` package can be found in the -`Spiff Arena documentation `_. If you are not familiar with BPMN, you +`Spiff Arena documentation `_. If you are not familiar with BPMN, you should start there. If you are looking for a full-fledged BPMN application, you can start and end there. This documentation will focus on the library itself and is geared towards developers who are building their own applications. -Please visit `SpiffWorkflow.org `_ for +Please visit `spiff.works `_ for additional articles, videos, and tutorials about SpiffWorkflow and its related projects including SpiffArena, Service Connectors, and BPMN.js extensions. @@ -48,7 +48,7 @@ Support You can find us on our `Discord Channel `_ Commercial support for SpiffWorkflow is available from -`Sartography `_ +Sartography at `spiff.works `_ Contents @@ -60,3 +60,9 @@ Contents modules bpmn/index core/index + +.. toctree:: + :maxdepth: 1 + :caption: Additional Documentation + + SpiffWorks Learn diff --git a/doc/modules.rst b/doc/modules.rst index 823a2d17..503ef0d8 100644 --- a/doc/modules.rst +++ b/doc/modules.rst @@ -41,7 +41,7 @@ Spiff BPMN Extensions --------------------- This module extends the generic BPMN implementation with support for custom extensions used by -`Spiff Arena `_. +`Spiff Arena `_. Camunda BPMN Extensions ----------------------- diff --git a/pyproject.toml b/pyproject.toml index a246d9e9..4f50d6bf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,7 +33,7 @@ dynamic = ["version"] [project.urls] Homepage = "https://github.com/sartography/SpiffWorkflow" -Documentation = "https://spiffworkflow.readthedocs.io" +Documentation = "https://spiff.works/docs/spiffworkflow/" [project.optional-dependencies] doc = [