skillfed

paradict

Streamable multi-format serialization

paradict v0.0.16 125.3K downloads/30d#11,825 on PyPI23
Permissive license MIT DORMANT released

What it is and what it does

Paradict is a serialization library that converts Python dictionaries to and from textual or binary representations. It offers two textual modes—a data-mode for bidirectional mapping to binary, and a config-mode with lighter syntax for configuration files—making it a multi-format alternative to JSON, YAML, TOML, Protobuf, MessagePack, and CBOR. The library supports a rich set of datatypes including strings, binary data, integers, floats, complex numbers, booleans, dates, times, datetimes, and nested lists, sets, and dictionaries.

Paradict includes a validation mechanism where schemas describe expected keys and data types, optionally with custom checker callbacks for programmatic validation. The API is built on four fundamental classes—Encoder, Decoder, Packer, and Unpacker—for iterative serialization, plus bulk functions and utilities like pack_into and unpack_from for file I/O. An extension mechanism allows custom object builders to transform extension objects during deserialization.

Use it for:

  • Serialize application state or configuration to binary files with datetime and complex number support
  • Validate incoming dictionary data against a schema before processing
  • Read and write structured data files in a human-readable textual format with lighter syntax than JSON
  • Stream large dictionaries incrementally using Encoder and Decoder classes
  • Define custom types and objects that deserialize into domain-specific Python classes via object builders

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Paradict serializes and deserializes Python dictionaries to textual or binary formats, with built-in schema validation and support for rich datatypes including dates, times, complex numbers, and nested structures.

Yes, if you need a multi-format dictionary serialization library with schema validation and support for rich datatypes. Install friction is minimal and the MIT license poses no restrictions. However, maintenance is dormant—the last commit was 2024-12-10 and activity is minimal—so consider this for stable, self-contained use cases rather than projects requiring active upstream support.

Install

paradict on PyPI

pip

pip install paradict

uv

uv add paradict

poetry

poetry add paradict

Installing paradict

Before you install

Low friction: pure Python wheel with no runtime dependencies. Maintenance is dormant—last commit was 2024-12-10 and the repository has not been archived, but activity is minimal.

License in practice

MIT license permits use, modification, and distribution with minimal restrictions; suitable for both open-source and proprietary projects.

Quickstart

from paradict import pack, unpack

my_dict = {0: 42}
bin_data = pack(my_dict)
assert my_dict == unpack(bin_data)

Verify before relying

  • Performance characteristics compared to JSON, MessagePack, or CBOR for typical workloads
  • Streaming API maturity and real-world adoption patterns
  • Whether the extension mechanism and object builder pattern are stable and well-tested

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.5)
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance dormant — 612 days since the last release
Last repo commit
First released
Downloads 125,335/month — #11,825 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: paradict-0.0.16-py3-none-any.whl

Keywords: pyrustic

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3

Tags

dictionary serialization formatbinary and text data encodingschema validation for dictionariesmulti-format serializationstreamable data serializationconfiguration file formatdata interchange format
serializationschema-validationdata-format

More Software Development packages