Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/marshmallow-code/flask-smorest

DB agnostic framework to build auto-documented REST APIs with Flask and marshmallow
https://github.com/marshmallow-code/flask-smorest

apispec flask marshmallow openapi python python3 rest-api webargs

Last synced: 28 days ago
JSON representation

DB agnostic framework to build auto-documented REST APIs with Flask and marshmallow

Awesome Lists containing this project

README

        

=============
flask-smorest
=============

.. image:: https://img.shields.io/pypi/v/flask-smorest.svg
:target: https://pypi.org/project/flask-smorest/
:alt: Latest version

.. image:: https://img.shields.io/pypi/pyversions/flask-smorest.svg
:target: https://pypi.org/project/flask-smorest/
:alt: Python versions

.. image:: https://img.shields.io/badge/marshmallow-3-blue.svg
:target: https://marshmallow.readthedocs.io/en/latest/upgrading.html
:alt: marshmallow 3 only

.. image:: https://img.shields.io/badge/OAS-2%20|%203-green.svg
:target: https://github.com/OAI/OpenAPI-Specification
:alt: OpenAPI Specification 2/3 compatible

.. image:: https://img.shields.io/pypi/l/flask-smorest.svg
:target: https://flask-smorest.readthedocs.io/en/latest/license.html
:alt: License

.. image:: https://github.com/marshmallow-code/flask-smorest/actions/workflows/build-release.yml/badge.svg
:target: https://github.com/marshmallow-code/flask-smorest/actions?query=workflow%3Abuild
:alt: Build status

.. image:: https://codecov.io/gh/marshmallow-code/flask-smorest/branch/master/graph/badge.svg?token=F676tOSaLF
:target: https://codecov.io/gh/marshmallow-code/flask-smorest
:alt: Code coverage

.. image:: https://results.pre-commit.ci/badge/github/marshmallow-code/flask-smorest/main.svg
:target: https://results.pre-commit.ci/latest/github/marshmallow-code/flask-smorest/main
:alt: pre-commit.ci status

.. image:: https://readthedocs.org/projects/flask-smorest/badge/
:target: http://flask-smorest.readthedocs.io/
:alt: Documentation

'cause everybody wants s'more
=============================

**flask-smorest** (formerly known as flask-rest-api) is a REST API framework
built upon `Flask `_ and
`marshmallow `_.

Sponsor Message
===============

Input an OpenAPI spec to generate API docs that look as good as Stripe's. `Request a preview `_ of your docs on Fern.

.. image:: https://github.com/user-attachments/assets/69916225-0d61-4bd7-b3b9-e378557673cb
:target: https://form.typeform.com/to/bShdJw7z
:align: center
:alt: Fern logo

Features
========

- Serialization, deserialization and validation using marshmallow ``Schema``
- Explicit validation error messages returned in response
- Database-agnostic
- OpenAPI (Swagger) specification automatically generated and exposed with
`ReDoc `_,
`Swagger UI `_ or
`RapiDoc `_
- Pagination
- ETag

Install
=======

::

pip install flask-smorest

Documentation
=============

Full documentation is available at http://flask-smorest.readthedocs.io/.

Support flask-smorest
======================

If you'd like to support the future of the project, please consider
contributing to marshmallow's Open Collective:

.. image:: https://opencollective.com/marshmallow/donate/button.png
:target: https://opencollective.com/marshmallow
:width: 200
:alt: Donate to our collective

License
=======

MIT licensed. See the `LICENSE `_ file for more details.