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.2.tar.gz (197.4 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.2-cp312-abi3-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.12+Windows x86-64

prompting_press-0.3.2-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.2-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.2-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.2-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.2-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.2.tar.gz.

File metadata

  • Download URL: prompting_press-0.3.2.tar.gz
  • Upload date:
  • Size: 197.4 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.2.tar.gz
Algorithm Hash digest
SHA256 d8c36f2126362dea2ac668970aa17321924b4671757c1c9df2f4dcd802ed0a52
MD5 c1fdad1f873ace92b217effe58bdeff8
BLAKE2b-256 c000fcfd605b4f47624404e828958a963f566f8af56433d717e23432e676acdd

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.2.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.2-cp312-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.2-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 84c7d2c5d9a7b911d8a5e35171c25b191c1e400f5d4d243187400ba2e07c2c1a
MD5 45441281d0923ba47e025008b7e38485
BLAKE2b-256 e0383c8ce44983ad67bf8d58bc2580b7efcdaf746eb9bbb7bf9e02177a232063

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.2-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.2-cp312-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.2-cp312-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 721dd49795a02ab1475aca0042600e8dd503a151a1cd7f014d3b12fe476a8654
MD5 818ec97b32c072b02fa4e535326de3fa
BLAKE2b-256 c7bde6e90482c71a978fda581a4b4ba9b540a6e2799a64b9dbaeeba575eeabd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.2-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.2-cp312-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.2-cp312-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bc25ed6f231263322a92a54d842afc6cafbe192c1cffc35f04d0edbe863de396
MD5 0b9a9560232e70f40f84e3cf841dcbde
BLAKE2b-256 be0ac74a298fc3164042580b65474fd2844349c7118c6882e0180cd58faa2971

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.2-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.2-cp312-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.2-cp312-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 79a25dbab05ac376734d4ad332d5d06a89af14df727c4a0709f9f74cd1a45cd1
MD5 d2499ce74b27b2abc4766f69b4d6921c
BLAKE2b-256 0393a082b5c12d40bff2797b8849bb48bd8fac5f3dd96d1c66e31c53f07df28d

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.2-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.2-cp312-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.2-cp312-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 82ff8e22e49e7a06ce64c355cb6aaef3d671245ced3e4259d851fd368844632a
MD5 4ebdd882cdabc803d33e6dca49db0adb
BLAKE2b-256 8a0640dc61028d0e2d33abde1db156f372dffc1854bf5afda4238e572c38dabc

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.2-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.2-cp312-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for prompting_press-0.3.2-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d247d7a86e3315e6b7880ec18a470438c4bb71e48a6abe7d7169704ad18a05bb
MD5 c908a72f15e024892113196add54062c
BLAKE2b-256 3e630374267b8977b87557809f2c6f42bd6d2f644a3af577b0a356148dbf4e4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for prompting_press-0.3.2-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

This release

0.3.2 This release

7 files

0.3.1

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