SchemaBind
SchemaBind is a focused Python package for turning existing dictionary fields into readable attribute access.
It came from working with CSV rows and wanting less repetitive lookup code. The library keeps the scope deliberately small: bind a dict, read fields as attributes, preserve normal dictionary helpers, and fail clearly when a field name is missing or ambiguous.
Use
Before
first = row["First Name"]
email = row.get("Email Address")
After
customer = bind(row)
customer.first_name
customer.email_address
What It Does
Bind Dicts
Wraps mapping-style row data without changing the original keys.
Normalize Names
First Name becomes first_name for access.
Catch Ambiguity
Duplicate normalized names raise errors instead of guessing.