Skip to main content

prompting-press

A typed, variant-aware prompt-template library. It turns typed inputs and a template into rendered text plus content-addressed provenance — nothing else (no I/O, no LLM calls, no request assembly). Rust, Python, and TypeScript all bind one compiled Rust engine, so rendered output is byte-identical across every language.

This is the Python distribution: a Pydantic-friendly PyO3 binding to that engine. Import name prompting_press; distribution name prompting-press.

Install

pip install prompting-press
uv add prompting-press          # in a uv project
uv pip install prompting-press  # uv's pip interface

Quick start

from prompting_press import Prompt
from pydantic import BaseModel

class Vars(BaseModel):
    company: str
    max_words: int

assistant = Prompt.from_yaml("""
name: assistant
role: system
body: "You are a support assistant for {{ company }}. Keep your replies under {{ max_words }} words."
variables:
  company: { type: string, trusted: true }
  max_words: { type: integer, trusted: true }
""")

result = assistant.render(Vars, data={"company": "Acme Robotics", "max_words": 50})
result.text           # "You are a support assistant for Acme Robotics. Keep your replies under 50 words."
result.template_hash  # 64-char SHA-256 of the template source
result.render_hash    # 64-char SHA-256 of the rendered output

Documentation

Full docs — getting started, API reference, template features, guides, and the CI agreement lint — are at https://prompting-press.github.io/.

License

Apache-2.0.

Download files

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

Source Distribution

prompting_press-0.3.1.tar.gz (197.0 kB view details)

Uploaded Source

Built Distributions

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

prompting_press-0.3.1-cp312-abi3-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.12+Windows x86-64

prompting_press-0.3.1-cp312-abi3-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12+musllinux: musl 1.2+ x86-64

prompting_press-0.3.1-cp312-abi3-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12+musllinux: musl 1.2+ ARM64

prompting_press-0.3.1-cp312-abi3-manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.28+ x86-64

prompting_press-0.3.1-cp312-abi3-manylinux_2_28_aarch64.whl (1.4 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.28+ ARM64

prompting_press-0.3.1-cp312-abi3-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

File details

Details for the file prompting_press-0.3.1.tar.gz.

File metadata

  • Download URL: prompting_press-0.3.1.tar.gz
  • Upload date:
  • Size: 197.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for prompting_press-0.3.1.tar.gz
Algorithm Hash digest
SHA256 93229c526e33cb4d18f584d38807af68629e874180cc84371107906c63a3851d
MD5 a8d240253ae0de089a83612a6c9755cc
BLAKE2b-256 e76a96f1f6ab9228cdebcde1ac3836dd76f466d9ec003d6b07290de805bbca80

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.1.tar.gz:

Publisher: release.yml on prompting-press/prompting-press

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

File details

Details for the file prompting_press-0.3.1-cp312-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.1-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 4cd2b2318d030d3c6a4c6b41102723a7bfb395c8e3ddcf6050f2e9f9597a002f
MD5 f57c764efe825d159be9d6b04a5166c1
BLAKE2b-256 3f7178e740f07c9f93f9db51bf308ff71bcd1028514eab732b268cdd11fb7340

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.1-cp312-abi3-win_amd64.whl:

Publisher: release.yml on prompting-press/prompting-press

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

File details

Details for the file prompting_press-0.3.1-cp312-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.1-cp312-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 92884c174cee07dee5aa393178b65def8e0c9091a3591bcfe07aa7b43e56229e
MD5 e3d1a6f01364d9d5069f96fdd3188eb5
BLAKE2b-256 73aea58419d0f4be797a00d431c58537017c72b6151b848f4d591423acccf56b

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.1-cp312-abi3-musllinux_1_2_x86_64.whl:

Publisher: release.yml on prompting-press/prompting-press

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

File details

Details for the file prompting_press-0.3.1-cp312-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.1-cp312-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1b14a1c56047d3fc2ef07a850a55b431ef749607188af965e31d2f329d6257b7
MD5 e0038f2ccbe3a26e693295557919fbe5
BLAKE2b-256 a5850d0563176f198cc5200d1b27844b3cdc5038075895fcd727e101547e4111

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.1-cp312-abi3-musllinux_1_2_aarch64.whl:

Publisher: release.yml on prompting-press/prompting-press

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

File details

Details for the file prompting_press-0.3.1-cp312-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.1-cp312-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bc08a854fd876d13839ac504a7ace6a94d4cc9640f6fa9d6fd9dac43020dab08
MD5 e1ed07f70eb489758caa4219ed7dc810
BLAKE2b-256 bcea23b9425df4e39fe47ab37d8eac28a8f9c740b250cb593dd239a7301dd92d

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.1-cp312-abi3-manylinux_2_28_x86_64.whl:

Publisher: release.yml on prompting-press/prompting-press

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

File details

Details for the file prompting_press-0.3.1-cp312-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.1-cp312-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 130a1c13e772d65f29deace2510824684579db00bdd1eeb2d80179078e0472c9
MD5 c781216eb3b63cad43f45f31389216ee
BLAKE2b-256 0f72058261fff9aad36178250bae7ac2143c62e6fc2a1d2951dd0cd5d919c91e

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.1-cp312-abi3-manylinux_2_28_aarch64.whl:

Publisher: release.yml on prompting-press/prompting-press

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

File details

Details for the file prompting_press-0.3.1-cp312-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.1-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b0fd4bd3a4d9c157b82461c93d1b4f1b36b269890cac7c05d71e337ce5640a93
MD5 fe463540f53fd5d20eaffb40ca22c24c
BLAKE2b-256 1440c369404c10cd46eda5faaea064fc77ec1ffd46c683d94fbfd4f2efc21535

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.1-cp312-abi3-macosx_11_0_arm64.whl:

Publisher: release.yml on prompting-press/prompting-press

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

Release history Release notifications | RSS feed

0.5.0

7 files

0.3.2

7 files

This release

0.3.1 This release

7 files

0.3.0

7 files

0.2.0

7 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page