Estoult is a Python toolkit for data mapping with an integrated query builder for SQL databases. It currently supports MySQL, PostgreSQL, and SQLite.


  • Not an ORM. Estoult doesn't attempt to apply relational algebra to objects.
  • Concise and composable (sub)queries.
  • Easy debugging by displaying any generated SQL in a readable format.
  • Fast. Estoult is NOT an ORM.

Estoult only works with Python 3.6+ and is primarily tested on Python 3.9+.


Install Estoult through pip:

pip install estoult


If you have found a bug or would like to see a feature added to Estoult, please submit an issue or a pull request! Likewise if you found something in the documentation unclear or imprecise.


Tests are run with pytest. Install it using pip:

pip install pytest

Run tests from the shell: