-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
As a dev, I want to explore alternative web frameworks to Flask for improved performance and developer experience #145
Comments
I suggest moving the comparison into this repository instead of making it an ADR. |
@k-allagbe I see a lot of good API wise but it definitely requires some work to mimic what we have in Flask. It's definitely an extra burden on the team and a new set of skills and knowledge. I don't think we can ask nachet to migrate to it. |
The objective was definitely not to impact nachet.
Evidently. Different tools. Please report that in the doc. I will take a crack at it too see if we can come up with something not too far from familiarity. |
So far with the Quart port, the API isn't that much different with the exception of anything related to authorization. flask_httpauth has a Quart equivalent but it doesn't appear to be as well maintained so I went with quart_auth. Also whether or not we go with FastAPI or Quart, the connection manager will need to be refactored as it's not compatible with async. |
Moving this to dev-rel-docs. |
Closing this as done. |
Description
Context
Currently, we use Flask to build our APIs. While Flask has been sufficient, it is synchronous and lacks some modern features like built-in asynchronous support and automatic API documentation (OpenAPI/Swagger). There are other open-source frameworks that could better suit our needs by offering enhanced developer experience and feature sets. We are considering alternatives like FastAPI, Quart, and others that meet our criteria, but only open-source solutions will be considered.
Problem Statement
Flask’s synchronous nature and lack of modern tooling (like automatic async support and Swagger generation) requires extra effort from developers. Evaluating other open-source frameworks that offer these features could improve the developer experience, streamline API development, and potentially enhance performance. While Django is excluded for being too heavyweight and opinionated for our use case, there may be other alternatives beyond FastAPI and Quart worth exploring.
Acceptance Criteria
Additional Information
The text was updated successfully, but these errors were encountered: