Overview#

deev on PyPI deev on Read the Docs

deev (דיב) is an entity framework for Python.

Features#

  • Entity-based; perform CRUD operations using Python objects instead of hand-crafting SQL.

  • Validation; Entities validate before they get persisted to a database, also validate entities on-demand.

  • Transaction Contexts; enter and exit transaction scopes with language-level context management, avoid mismanaged transaction states.

  • DB Migrations; use Python code to apply (and undo) schema changes, data translation, etc. using the db-migrate CLI tool for use from CI/CD pipelines.

  • PEP 249 compatible abstractions; no need to refactor code just to switch DBMS.

  • Syntax normalization; parameterize SQL using %? instead of provider-specific syntaxes.

  • Raw SQL Access; execute raw SQL as-needed, including provider/DBMS-specific functions (primarily intended for advanced db-migrate cases).

Contents#