Skip to main content

protoform-engine

Server-side ProtoForm rule engine. The same form schema your frontend renders is re-evaluated on the server (visibility, conditional logic, validation) with semantics identical to the TypeScript engine, verified by a shared conformance suite.

The core engine is pure Python with zero dependencies. Django and DRF are optional integration layers.

pip install protoform-engine          # engine only, works anywhere (FastAPI, Flask, workers)
pip install protoform-engine[django]  # + model mapping helpers
pip install protoform-engine[drf]     # + ProtoFormView (GET schema / PATCH step / POST submit)
from protoform import prepare_form, evaluate_rules, validate_step

prepared = prepare_form(schema)                      # resolve templates, build maps
result = evaluate_rules(prepared, values)            # derived state: visible/required/valid/messages
step = validate_step(prepared, values, "step_1")     # {"valid": bool, "errors": {...}}

See the Django engine reference and the protocol specification.

MIT licensed.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

protoform_engine-0.9.0.tar.gz (35.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

protoform_engine-0.9.0-py3-none-any.whl (21.5 kB view details)

Uploaded Python 3

File details

Details for the file protoform_engine-0.9.0.tar.gz.

File metadata

  • Download URL: protoform_engine-0.9.0.tar.gz
  • Upload date:
  • Size: 35.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for protoform_engine-0.9.0.tar.gz
Algorithm Hash digest
SHA256 f93e01827fadd5a640540be76030abd60be1b00b7e754dbc65de61a766a31c1f
MD5 11ba5990c5107da1a9cd504a08bf1ebc
BLAKE2b-256 a91096df5fa4d8b26da8f736f86dc366312c501fb89f07ea73c8f2b70232ff64

See more details on using hashes here.

Provenance

The following attestation bundles were made for protoform_engine-0.9.0.tar.gz:

Publisher: release-pypi.yml on AlexanderCollins/protoform

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file protoform_engine-0.9.0-py3-none-any.whl.

File metadata

File hashes

Hashes for protoform_engine-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4ffdf0706cc5e330fa91365a1db9f09f9ba9b2402709585f985e9472369b793e
MD5 67791d76e132fbac03058ae6662980c8
BLAKE2b-256 a1f5f8652984597fbc8b09e005deb3c5bdd8d59bf5b1d7823e9e83efdadef96e

See more details on using hashes here.

Provenance

The following attestation bundles were made for protoform_engine-0.9.0-py3-none-any.whl:

Publisher: release-pypi.yml on AlexanderCollins/protoform

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.9.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page