close
GINO is a non-typical
object-relational mapping
library in Python for asyncio.
GitHub Project

asyncpg

High performance
PostgreSQL driver

SQLAlchemy

Robust & mature SQL
rendering engine

No Surprise

Lightweight & explicit
architecture

Being Pythonic

Practical API for
development performance

 HIGHLIGHTS

GINO is an engineering product,
built on top of popular tools,
tailored for asyncio.

Read More

ARCHITECTURE 

BERJAYA Query Builder

For applications using asyncpg directly,
GINO adds the ingredient of building SQLs
conveniently with SQLAlchemy core.

BERJAYA Async SQLAlchemy

GINO provides SQLAlchemy-like Engine
with async APIs.

BERJAYA Object Loader

GINO could load data into POPOs
(Plain Old Python Objects) for
easier data access.

Read More
SQLAlchemy core
GINO Async Wrapper
GINO Loader
GINO Dialect
asyncpg

SHOWCASE

BERJAYA

I built GINO because I found it difficult to access database in Python with asyncio in 2017, and I wanted all three of explicitness, development performance and runtime performance in a single library.

Following GNU’s naming style, GINO is recursively defined as GINO Is Not ORM, indicating that it’s almost an ORM but refuses to inherit the implicit behaviors found in typical ORMs.

BERJAYA BERJAYA

ROADMAP

BERJAYA

1.0 Release

Redo packaging and automation


BERJAYA

Embed aiocontextvars and move extensions out


BERJAYA

python-gino.org


BERJAYA

Release candidates


BERJAYA

Better documentation


BERJAYA

Blog post


BERJAYA

Cached prepared statement


BERJAYA

MySQL support


BERJAYA

Better typing support


BERJAYA

SQLAlchemy 1.4 SQLAlchemy 2 support


BERJAYA