New major versions of Flask, Jinja, Click, and Werkzeug released!

This page summarizes the projects mentioned and recommended in the original post on /r/Python

Judoscale - Save 47% on cloud hosting with autoscaling that just works
Judoscale integrates with Django, FastAPI, Celery, and RQ to make autoscaling easy and reliable. Save big, and say goodbye to request timeouts and backed-up task queues.
judoscale.com
featured
CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
  1. Flask

    The Python micro framework for building web applications.

    There is a get as well! All supported methods are shown in https://github.com/pallets/flask/pull/3907/files :599:

  2. Judoscale

    Save 47% on cloud hosting with autoscaling that just works. Judoscale integrates with Django, FastAPI, Celery, and RQ to make autoscaling easy and reliable. Save big, and say goodbye to request timeouts and backed-up task queues.

    Judoscale logo
  3. asyncpg

    A fast PostgreSQL Database Client Library for Python/asyncio.

    What we get with the async part of this release - If you would like to run an async library or your own async code from a flask route you can do that now. This is super useful, where let's say we have some async code that fetches data from many sources concurrently, or call multiple a few ML prediction endpoints at the same time (as long as they don't time out) using httpx and respond with some sort of outcome, or finally try that cool new async-only database library. A current (v2) limitation is that the you can't make concurrent requests using just the current asyncio implementation (an alternative with Flask API and ASGI: Quart). Typically in production gunicorn or uwsgi + threads/processes/gevent-eventlet is used and this makes Flask behave asynchronously. More here and here if interested.

  4. flask-smorest

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

    flask-smorest Flask, API + OpenAPI/SwaggerUI/Redoc + Marshmallow

  5. flask-rebar

    Flask-Rebar combines flask, marshmallow, and swagger for robust REST services.

    rebar Flask, API + OpenAPI/SwaggerUI + Marshmallow

  6. flask-pydantic-spec

    An Flask OpenAPI library using Pydantic

    flask-pydantic-spec Flask, API + OpenAPI/SwaggerUI/Redoc + Pydantic

  7. flask-pydantic

    flask extension for integration with the awesome pydantic package

    flask_pydantic

  8. httpx

    A next generation HTTP client for Python. 🦋

    What we get with the async part of this release - If you would like to run an async library or your own async code from a flask route you can do that now. This is super useful, where let's say we have some async code that fetches data from many sources concurrently, or call multiple a few ML prediction endpoints at the same time (as long as they don't time out) using httpx and respond with some sort of outcome, or finally try that cool new async-only database library. A current (v2) limitation is that the you can't make concurrent requests using just the current asyncio implementation (an alternative with Flask API and ASGI: Quart). Typically in production gunicorn or uwsgi + threads/processes/gevent-eventlet is used and this makes Flask behave asynchronously. More here and here if interested.

  9. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  10. quart

    An async Python micro framework for building web applications. (by pgjones)

    What we get with the async part of this release - If you would like to run an async library or your own async code from a flask route you can do that now. This is super useful, where let's say we have some async code that fetches data from many sources concurrently, or call multiple a few ML prediction endpoints at the same time (as long as they don't time out) using httpx and respond with some sort of outcome, or finally try that cool new async-only database library. A current (v2) limitation is that the you can't make concurrent requests using just the current asyncio implementation (an alternative with Flask API and ASGI: Quart). Typically in production gunicorn or uwsgi + threads/processes/gevent-eventlet is used and this makes Flask behave asynchronously. More here and here if interested.

  11. starlette

    The little ASGI framework that shines. 🌟

    Worth noting that I noticed a lot of online examples showing FastAPI serving Machine Learning models - (inherently cpu intensive, blocking), don't run any actual user code that's async inside the routes, so technically don't benefit from it compared to Flask. They are also often handled in sync routes def foo(): and not async routes async def foo(): which means they aren't even handled async from the get-go. In fact, internally, Starlette (and therefore by extension FastAPI) runs background tasks and non-async routes in ThreadPoolExecutor, see code here and here. It's important for those coming from DS/ML to recognize that for these use cases there's great benefit serving concurrent responses, maybe for result lookups of and db queries, but not so much with cpu-bound tasks. Being ASGI won't automatically make your app faster. And with computationally heavy tasks, just being concurrent won't make your app faster. For parallelism, (in python) multiple workers is a better strategy. Also, there's queues. More on serving computationally bound requests here

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Microdot "The impossibly small web framework for Python and MicroPython"

    6 projects | news.ycombinator.com | 5 Nov 2023
  • How to Stream Bytes Uploaded so far in Python like XMLHttpRequest: progress event

    2 projects | /r/learnpython | 8 Sep 2022
  • Axios & Error handling like a boss 😎

    3 projects | dev.to | 6 Aug 2022
  • Multiprocessing/multithreading

    1 project | /r/learnpython | 29 Jul 2022
  • Python Flask has no remaining open issues or pull requests

    9 projects | news.ycombinator.com | 1 Jul 2022

Did you know that Python is
the 2nd most popular programming language
based on number of references?