Skip to main content

Latest Version Python Versions Build Status Documentation Status

wizdantic

wizdantic

Conjure populated Pydantic models from thin air with an interactive terminal wizard.

Super-quick start

Requires Python 3.12+.

pip install wizdantic

Usage

Define a Pydantic model. Call run_wizard. That's it.

from pydantic import BaseModel, Field
from wizdantic import run_wizard

class Spellbook(BaseModel):
    name: str = Field(description="Spellbook title")
    page_count: int = Field(description="Number of pages", default=300)
    ink_weight_kg: float = Field(description="Weight of enchanted ink in kilograms", default=0.4)
    cursed: bool = Field(description="Bound with a curse", default=False)

book = run_wizard(Spellbook, title="Register a Spellbook")

The wizard walks the user through each field, validates input inline, insists on required values, pre-fills defaults, and returns a fully constructed model instance.

Try the demo

The fastest way to see wizdantic in action is to run the interactive demo. No install required:

uvx --from=wizdantic[demo] wizdantic-demo

The demo walks through every supported field type, one spell at a time. Each spell shows the model definition and a plain-English description, then drops you into a live wizard.

Documentation

Full documentation at dusktreader.github.io/wizdantic.

Metadata

Release files for wizdantic 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wizdantic 0.3.0
File Size Uploaded
wizdantic-0.3.0.tar.gz 27.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wizdantic 0.3.0
File Interpreter ABI Platform
wizdantic-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 62.1 kB

Release files / wizdantic-0.3.0.tar.gz

Download URL wizdantic-0.3.0.tar.gz
Size 27.3 kB
Tags Source
SHA-256 checksum
How to use checksums
f08871df754dac291da7418785c3d59957a97688d85a0a867573b333995008dd
BLAKE2b-256 checksum
How to use checksums
e2aa0a292edf23a5d57c417eccd6e0018b2ad8cf339e0ea5c6840190d265a065
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / wizdantic-0.3.0-py3-none-any.whl

Download URL wizdantic-0.3.0-py3-none-any.whl
Size 34.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c612aa6294336e7b6dc3e70fa49bb0672eaa2e54272fdb30b3eeae10805a75ce
BLAKE2b-256 checksum
How to use checksums
69fb216658791778514c376ed0c20cf7f1b4935ae3f83f7ec25714915d39dc0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release 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