Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/autoinvent/flask-magql

Serve a Magql GraphQL API with Flask.
https://github.com/autoinvent/flask-magql

autoinvent flask flask-magql graphql magql python

Last synced: 3 days ago
JSON representation

Serve a Magql GraphQL API with Flask.

Awesome Lists containing this project

README

        

# Magql-SQLAlchemy

[Magql] is a [GraphQL] framework for Python. It's pronounced "magical", and
it is! This extension allows generating a complete API from [SQLAlchemy]
database models. After the schema is generated, it can be modified to add,
remove, or change any behavior. Here's some of the features Magql-SQLAlchemy
provides:

- `item` and `list` queries, and `create`, `update`, and `delete`
mutations for each model.
- Database queries are efficient, using SQLAlchemy's relationship loading
techniques to eagerly load relationships that are present anywhere in the
operation structure.
- The list query can be filtered using multiple rules. Attributes can be
filtered across relationships. Rules can be grouped and joined using AND and
OR. Lists can be sorted by any column and paginated.
- The create mutation recognizes null and default column values. The update
mutation allows updating any field independently.
- The create and update mutations validate unique constraints.
- A universal `search` query to search all string columns of all models.
- A `check_delete` query to check the effects of deleting a row before doing so.

[Magql]: https://magql.autoinvent.dev
[GraphQL]: https://graphql.org
[SQLAlchemy]: https://sqlalchemy.org