Ready-to-go SQLAlchemy concoctions.
Project description
Advanced Alchemy
Check out the project documentation 📚 for more information.
About
A carefully crafted, thoroughly tested, optimized companion library for SQLAlchemy, offering features such as:
-
Sync and async repositories, featuring common CRUD and highly optimized bulk operations
-
Integration with major web frameworks including Litestar, Starlette, FastAPI, Sanic.
-
Custom-built alembic configuration and CLI with optional framework integration
-
Utility base classes with audit columns, primary keys and utility functions
-
Optimized JSON types including a custom JSON type for Oracle.
-
Pre-configured base classes with audit columns UUID or Big Integer primary keys and a sentinel column.
-
Synchronous and asynchronous repositories featuring:
- Common CRUD operations for SQLAlchemy models
- Bulk inserts, updates, upserts, and deletes with dialect-specific enhancements
- lambda_stmt when possible for improved query building performance
- Integrated counts, pagination, sorting, filtering with
LIKE
,IN
, and dates before and/or after.
-
Tested support for multiple database backends including:
- SQLite via aiosqlite or sqlite
- Postgres via asyncpg or psycopg3 (async or sync)
- MySQL via asyncmy
- Oracle via oracledb (tested on 18c and 23c)
- Google Spanner via spanner-sqlalchemy
- DuckDB via duckdb_engine
- Microsoft SQL Server via pyodbc
Usage
[!IMPORTANT]
Check out the installation guide in our official documentation!
Litestar
[!NOTE]
This section has not been completed (yet!)
Starlette/FastAPI
[!NOTE]
This section has not been completed (yet!)
Sanic
[!NOTE]
This section has not been completed (yet!)
Contributing
All Jolt projects will always be a community-centered, available for contributions of any size.
Before contributing, please review the contribution guide.
If you have any questions, reach out to us on Discord, our org-wide GitHub discussions page, or the project-specific GitHub discussions page.
A Jolt Organization Project
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for advanced_alchemy-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5aca306c45d161f43a3d6487ede5e21682f61485ef44df0a62e52ec06cb2ec3 |
|
MD5 | 8e46edff8039f44b32231115da1e76b3 |
|
BLAKE2b-256 | b9808d8bdb39e46ab85b41474f9002763f3a8eeb3e17d732b09dec60834399ad |