Justflow
Durable YAML workflows executed on Temporal.
Describe your workflow in YAML and implement its actions in Python or call an existing service. Temporal keeps track of progress, retries, and long-running waits. Justflow validates the workflow, manages its definitions, and provides APIs to start and inspect runs.
What you can build
- Multi-step processes with branches, parallel work, child workflows, and failure handling.
- Scheduled jobs, event-driven workflows, and appointment reminders.
- Customer batches and individual customer workflows within a tenant's scope.
- Workflows that call HTTPS, gRPC, or SQS-backed services and use resources such as S3 and PostgreSQL.
- Your own dashboard using the public API, or an installation with the optional admin panel.
See the changelog for the full feature list and beta limitations.
Quickstart
The prime_stats example runs a complete workflow on your machine.
git clone https://github.com/nickyua/justflow.git
cd justflow
python3 -m venv .venv
.venv/bin/pip install -e ".[dev]" -e examples/prime_stats
.venv/bin/python -m justflow validate --config-dir examples/prime_stats/configs
.venv/bin/python -m justflow run prime_stats --config-dir examples/prime_stats/configs --param n=20 --param seed=42
This command starts a temporary Temporal development server and stops it after the workflow finishes. Use a persistent Temporal service for production.
Install
pip install justflow
pip install "justflow[control,admin]"
Core includes direct and HTTPS transports. Optional extras are aws, grpc, postgres, redis,
control, admin, and all. Justflow supports Python 3.11–3.14.
Public interfaces
- Export versioned JSON Schemas for your editor with
justflow schema export --output .justflow/schemas. - Export the OpenAPI 3.1 document for dashboard and automation clients with
justflow api schema export --output .justflow/api. - The optional admin panel is a separate package that uses these same tenant-scoped APIs.
- Your application supplies authentication, integrations, storage, and Temporal credentials through typed Python interfaces.
Documentation
- Getting started
- Concepts and guarantees
- Workflow and trigger authoring
- Integrations and custom providers
- Deployment, security, configuration, and troubleshooting
- Local runtime and Docker Compose
- AWS deployment
- AWS data services and ECS connectivity
- CLI, settings, schemas, OpenAPI, errors, and Python API
- Upgrade guide, limitations, and support
Development
.venv/bin/pip install -e packages/justflow-admin
npm --prefix ui/admin ci
make check
This runs frontend checks, formatting, typing, unit/integration/replay/sandbox tests, documentation checks, and package installation tests. See CONTRIBUTING.md.
Status and license
0.1 is beta software. Read the support policy, security policy, changelog, and limitations before production adoption.
Licensed under the Apache License 2.0; attribution details are in NOTICE.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file justflow-0.1.1.tar.gz.
File metadata
- Download URL: justflow-0.1.1.tar.gz
- Upload date:
- Size: 1.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
340b3de9b78d67ee0978c5e2f5e522c3035ad9ebb45b277e314da119b1a53e05
|
|
| MD5 |
990e847b45da968c71a0e8418b5b7e4a
|
|
| BLAKE2b-256 |
eebc7238d850376dd7cb772b5b22b5ee416a7442aac5824968a14f4fb796f034
|
Provenance
The following attestation bundles were made for justflow-0.1.1.tar.gz:
Publisher:
release.yml on nickyua/justflow
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
justflow-0.1.1.tar.gz -
Subject digest:
340b3de9b78d67ee0978c5e2f5e522c3035ad9ebb45b277e314da119b1a53e05 - Sigstore transparency entry: 2786109614
- Sigstore integration time:
-
Permalink:
nickyua/justflow@e898f76d8c07e725c0a1ff095981cd37b13046f0 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/nickyua
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@e898f76d8c07e725c0a1ff095981cd37b13046f0 -
Trigger Event:
push
-
Statement type:
File details
Details for the file justflow-0.1.1-py3-none-any.whl.
File metadata
- Download URL: justflow-0.1.1-py3-none-any.whl
- Upload date:
- Size: 1.5 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
335f33d9c605e32f7219179a72887174655a215c9587c083b6a2bc31b52c0e9b
|
|
| MD5 |
2b58e6fc702ec7985b46cc1eaa331062
|
|
| BLAKE2b-256 |
b2b4fa77acc390b001ba922eb0768966559d520fc0e4c96f47ce155a13c2f1f8
|
Provenance
The following attestation bundles were made for justflow-0.1.1-py3-none-any.whl:
Publisher:
release.yml on nickyua/justflow
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
justflow-0.1.1-py3-none-any.whl -
Subject digest:
335f33d9c605e32f7219179a72887174655a215c9587c083b6a2bc31b52c0e9b - Sigstore transparency entry: 2785990797
- Sigstore integration time:
-
Permalink:
nickyua/justflow@e898f76d8c07e725c0a1ff095981cd37b13046f0 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/nickyua
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@e898f76d8c07e725c0a1ff095981cd37b13046f0 -
Trigger Event:
push
-
Statement type: