databind.core
Databind is a library inspired by jackson-databind to de-/serialize Python dataclasses. Compatible with Python 3.8 and newer. Deprecated, use `databind` package.
What it is and what it does
Databind is a dataclass (de)serialization framework designed for flexible configuration loading rather than high-performance scenarios. It understands most native Python types—including Enum, Decimal, UUID, Path, datetime, date, time, and timedelta—as well as dataclasses themselves, and can round-trip them to and from JSON-like nested dictionaries. The library supports generic types, multiple union serialization modes, customized type handlers, and field flattening, with runtime type checking during serialization.
The package is configured through settings applied at three levels: globally per load/dump call, as class-level decorators, or inline via type hints using Annotated. It is not intended for scenarios requiring high throughput; the maintainer explicitly recommends other libraries for performance-critical use cases.
Use it for:
- Load application configuration from JSON files into typed dataclass structures with automatic type conversion and validation.
- Serialize dataclass instances back to JSON for storage or API responses with full type awareness.
- Handle complex nested configurations with support for enums, dates, UUIDs, and other non-primitive types.
- Define custom serialization rules per type or field using decorators and Annotated hints.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Deserializes and serializes Python dataclasses and native types to and from JSON-like nested data structures, with support for enums, decimals, UUIDs, paths, datetimes, and generic types.
Yes, if you need flexible dataclass serialization for configuration loading and can tolerate non-optimized performance. The library is actively maintained, permissively licensed, and has low install friction. Note: the package is marked deprecated in favor of the merged 'databind' package; verify whether migration is recommended for new projects.
Install
databind-core on PyPI
pip
pip install databind-coreuv
uv add databind-corepoetry
poetry add databind-coreInstalling databind.core
Before you install
Low install friction; pure Python wheel. Actively maintained with a release 84 days ago. Supports Python 3.8 and newer.
License in practice
MIT license permits commercial and private use with minimal restrictions—suitable for most projects.
Quickstart
pip install databind-core
from dataclasses import dataclass
from databind.json import load, dump
@dataclass
class Config:
host: str
port: int
data = {"host": "localhost", "port": 8080}
config = load(data, Config)
result = dump(config, Config)
Verify before relying
- Whether databind-core is still the recommended entry point or if users should migrate to the merged 'databind' package instead
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — databind |
| Maintenance | actively maintained — 84 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 246,452/month — #8,710 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: databind_core-4.5.5-py3-none-any.whl
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
databindDatabind deserializes JSON-like nested data…
permissive · top 15,000 on PyPI
databind.jsonDeserializes and serializes Python dataclasses…
permissive · top 15,000 on PyPI
dataclass-factoryConverts dataclasses to and from dictionaries…
permissive · top 15,000 on PyPI
json-strong-typingSerializes Python dataclasses to JSON and…
permissive · top 15,000 on PyPI
daciteConverts dictionaries into dataclass instances…
permissive · top 1,000 on PyPI
typedloadLoads and dumps JSON-like data into typed…
copyleft · top 1,000 on PyPI
pyserdeSerialize and deserialize Python dataclasses to…
permissive · top 5,000 on PyPI
serpyco-rsSerializes and deserializes Python dataclasses…
permissive · top 15,000 on PyPI
dataclass-wizardDataclass Wizard converts Python dataclasses to…
permissive · top 5,000 on PyPI
jsonsConverts Python objects (dataclasses, attrs…
permissive · top 5,000 on PyPI