Skip to main content

Assembly Line Weaver: Suffolk LIT Lab Document Assembly Line

PyPI version

drawing of two cartoon people collaborating on building a web application

The Assembly Line Project is a collection of volunteers, students, and institutions who joined together during the COVID-19 pandemic to help increase access to the court system. Our vision is mobile-friendly, easy to use guided online forms that help empower litigants to access the court remotely.

Our signature project is CourtFormsOnline.org.

We designed a step-by-step, assembly line style process for automating court forms on top of Docassemble and built several tools along the way that you can use in your home jurisdiction.

This package contains an automation and rapid prototyping tool to support authoring robust, consistent, and attractive Docassemble interviews that help complete court forms. Upload a labeled PDF or DOCX file, and the Assembly Line Weaver will produce a runnable, clean code, draft of a Docassemble interview that you can continue to edit and refine.

Read more on our documentation page.

Related repositories

Documentation

https://suffolklitlab.org/docassemble-AssemblyLine-documentation/

ALWeaver API

When installed on a docassemble server, ALWeaver exposes a custom Flask API:

  • POST /al/api/v1/weaver (primary)
  • GET /al/api/v1/weaver/jobs/{job_id} (async job polling)
  • DELETE /al/api/v1/weaver/jobs/{job_id} (async job cleanup)
  • GET /al/api/v1/weaver/openapi.json (OpenAPI spec)
  • GET /al/api/v1/weaver/docs (human-readable docs)

The API uses docassemble's API key authentication via api_verify(). The POST endpoint defaults to synchronous behavior, and supports optional asynchronous execution with mode=async (or async=true).

Celery worker configuration

Uploaded-document project generation in the graphical editor, importing a template already in a project, publishing a project to GitHub, and asynchronous API requests require ALWeaver's task module to be registered with Docassemble's global Celery configuration. Add the module to the existing celery modules list in the Docassemble configuration; preserve any modules already listed:

celery modules:
  - docassemble.ALWeaver.api_weaver_worker

After changing the configuration, restart or redeploy both the Docassemble web service and every Celery worker so that they load the same task registry. Blank project creation, ordinary graphical/source editing, and synchronous API calls do not require this module.

ALWeaver checks this setting when its editor module starts and whenever the editor page loads. If it is missing, the server logs a warning and the editor shows a persistent setup notice before a developer selects a file to generate. An attempted background request fails with HTTP 503, a structured async_not_configured API error (or editor_async_not_configured from the graphical editor), and a link back to these instructions. Weaver does not enqueue an unregistered task or fall back to an in-process thread.

The revisioned graphical source-patch API is an opt-in beta. Set WEAVER_ENABLE_PATCH_MODEL: true in the Docassemble configuration (or the same environment variable) to enable it. The default production path remains off until graphical editing paths have migrated to exact source-range commands.

The editor's interview debugger is enabled by default for authenticated developers and administrators. It runs the real interview in a separate test session beside current-question details, a step recorder, variable inspection, scenario seeding, and back navigation. Set weaver: {runtime inspector: false} (or WEAVER_ENABLE_RUNTIME_INSPECTOR: false) to turn it off. Its server API uses owner-scoped target sessions and a fixed read-only al_weaver.inspect_* action allowlist; Docassemble remains the only interview runtime.

History

See the CHANGELOG for more information.

Authors

Quinten Steenhuis, qsteenhuis@suffolk.edu
Michelle
Bryce Willey, bwilley@suffolk.edu Lily
David Colarusso
Nharika Singh

Installation requirements

Using auto drafting mode

To use auto-drafting mode, you can get an Open AI API Key and set it in your docassemble configuration.

open ai:
  key: ...

Download files

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

Source Distribution

docassemble_alweaver-2.3.0.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

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

docassemble_alweaver-2.3.0-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file docassemble_alweaver-2.3.0.tar.gz.

File metadata

  • Download URL: docassemble_alweaver-2.3.0.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for docassemble_alweaver-2.3.0.tar.gz
Algorithm Hash digest
SHA256 197d7a77b71a063ffb6dbaab5d4e6edbf3386640fe1f34e61767dee78db1848c
MD5 674c2c76f06d983f803bc484d56c5e24
BLAKE2b-256 673c1bb8e7a3d4f57389635f731e372c48a684736bb8358f9ef2bd5a03f29b44

See more details on using hashes here.

Provenance

The following attestation bundles were made for docassemble_alweaver-2.3.0.tar.gz:

Publisher: publish.yml on SuffolkLITLab/docassemble-ALWeaver

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

File details

Details for the file docassemble_alweaver-2.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for docassemble_alweaver-2.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aff6409dbef0d2c281c666887b40d2fbde6ed8d9b022e4ca08f49e74ca078e2c
MD5 a8b8bbc732a3eb27cc400241d742e7c7
BLAKE2b-256 16d650f27b9dd7b889467280b9ca73bc066f715994a087fe8f1714bf124767c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for docassemble_alweaver-2.3.0-py3-none-any.whl:

Publisher: publish.yml on SuffolkLITLab/docassemble-ALWeaver

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

Release history Release notifications | RSS feed

2.3.1

2 files

This release

2.3.0 This release

2 files

2.2.0

2 files

2.1.0

2 files

2.0.0

2 files

1.11.0

2 files

1.10.3

2 files

1.10.2

2 files

1.10.1

2 files

1.10.0

2 files

1.9.0

2 files

1.8.0

2 files

1.7.0

1 file

1.6.3

1 file

1.6.1

1 file

1.6.0

1 file

1.5.1

1 file

1.5.0

1 file

1.4.7.1

1 file

1.4.6

1 file

1.4.5

1 file

1.4.4

1 file

1.3.1

1 file

1.3.0

1 file

1.2.3

1 file

1.2.2

1 file

1.2.1

1 file

1.0.3

1 file

1.0.0

1 file

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