Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →
Top 23 Python Web Framework Projects
-
You should not test Django's own code — it's already been tested. For example, you don't need to write a test that checks if an object is retrieved with get_object_or_404 — Django's testing suite already has that covered.
-
An API application framework (such as FastAPI)
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
#!/usr/bin/python # # https://flask.palletsprojects.com/en/3.0.x/installation/ # from flask import Flask, jsonify, request contacts = [ { "id": "1", "firstname": "Lorem", "lastname": "Ipsum", "email": "[email protected]", }, { "id": "2", "firstname": "Mauris", "lastname": "Quis", "email": "[email protected]", }, { "id": "3", "firstname": "Donec Purus", "lastname": "Purus", "email": "[email protected]", } ] app = Flask(__name__, static_url_path='', static_folder='public',) @app.route("/contact//save", methods=["PUT"]) def save_contact(id): data = request.json contacts[id - 1] = data return jsonify(contacts[id - 1]) @app.route("/contact/", methods=["GET"]) @app.route("/contact//edit", methods=["GET"]) def get_contact(id): return jsonify(contacts[id - 1]) @app.route('/') def root(): return app.send_static_file('index.html') if __name__ == '__main__': app.run(debug=True)
-
Tornado
Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.
Project mention: Epoll: The API that powers the modern internet (2022) | news.ycombinator.com | 2024-01-11I am not expert in these but I thought Tornado's ioloop was readable enough for me to learn more event loops. Mostly, it was being implemented in pure Python.
https://github.com/tornadoweb/tornado/blob/branch4.5/tornado...
(Had to be in 4.5 because the newer versions 5.x and 6.x, it's switched to Python's stdlib asyncio)
-
Project mention: Show HN: The HTTP Garden – A Parser Vulnerability Research Tool | news.ycombinator.com | 2024-02-05
> AIOHTTP: The Python int constructor is used to parse Content-Lengths and chunk-sizes, so _, +, and - are misinterpreted.
Fun. I believe the fix is incomplete here[1]. Python's int() constructor accepts integers comprised of any unicode numeral, for example, int("٦٦٦") == 666, and "٦٦٦".isdecimal() == True.
[1] https://github.com/aio-libs/aiohttp/pull/7663/files#diff-197...
-
Project mention: Ask HN: What are some unpopular technologies you wish people knew more about? | news.ycombinator.com | 2023-12-02
Bottle.py: uber-fast and simple python web microframework, about 3x faster, saner, and more memory-efficient than Flask in my experience: https://github.com/bottlepy/bottle
Fossil: distributed version control and much more in a single executable, from the creators of SQLite: https://fossil-scm.org/
-
Project mention: Who moved my error codes? Adding error types to your GoLang GraphQL Server | dev.to | 2023-06-25
And gqlgen is not alone in this. We found several more GraphQL frameworks that don’t take it upon themselves to address this problem. Widely used GraphQL server implementations, such as graphql-go/graphql and Python’s graphene, have the exact same gap of exposing messages of unexpected errors by default.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
-
Project mention: Ask HN: Do you need a web framework for a startup landing page? | news.ycombinator.com | 2024-01-27
You don't need a framework for a single page. That being said, using a framework is probably a good idea if you intend to be on a growth curve.
Pyramid is a framework written to scale from a small, single-file site to a site that has grown horizontally scaled across multiple servers. If I understand your needs correctly, Pyramid is probably worth a look, here's a link: https://trypyramid.com/
Pyramid is under active development, and it has a large, helpful, welcoming user community.
-
Masonite
The Modern And Developer Centric Python Web Framework. Be sure to read the documentation and join the Discord channel for questions: https://discord.gg/TwKeFahmPZ
-
Project mention: Use any web browser as GUI, with Zig in the back end and HTML5 in the front end | news.ycombinator.com | 2024-01-01
-
web2py
Free and open source full-stack enterprise framework for agile development of secure database-driven web-based applications, written and programmable in Python.
Project mention: Ask HN: Can I create a mobile and Web App using Python/Python Framework? | news.ycombinator.com | 2024-02-13For reference, YouTube runs on Python[1,2,3]:
> 1. Python and Django: YouTube’s backend is predominantly written in Python, offering a balance of performance and readability.
> 2. Google Cloud Platform...
> 3. Java and C++: YouTube also utilizes Java and C++ for specific backend services, as they provide better performance for certain tasks.
---
A long time ago, I looked into these Python frameworks:
[1]: https://blogopost.com/youtube-tech-stack/#backend
[2]: https://medium.com/@shanthanaroja99/technology-stack-behind-...
-
-
Project mention: Building a streaming SQL engine with Arrow and DataFusion | news.ycombinator.com | 2024-03-18
-
-
TurboGears
Python web framework with full-stack layer implemented on top of a microframework core with support for SQL DBMS, MongoDB and Pluggable Applications
-
-
Websauna
Websauna is a full stack Python web framework for building web services and back offices with admin interface and sign up process
-
-
-
-
domonic
Create HTML with python 3 using a standard DOM API. Includes a python port of JavaScript for interoperability and tons of other cool features. A fast prototyping library.
-
tartiflette-aiohttp
tartiflette-aiohttp is a wrapper of aiohttp which includes the Tartiflette GraphQL Engine, do not hesitate to take a look of the Tartiflette project.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Python Web Frameworks related posts
- Building a streaming SQL engine with Arrow and DataFusion
- LangChain, Python, and Heroku
- Webhooks suck, but here are alternatives
- An Introduction to Testing with Django for Python
- Ask HN: Can I create a mobile and Web App using Python/Python Framework?
- AI-Powered Image Search with CLIP, pgvector, and Fast API
- Django Hello, World
-
A note from our sponsor - InfluxDB
www.influxdata.com | 19 Mar 2024
Index
What are some of the best open-source Web Framework projects in Python? This list will help you:
Project | Stars | |
---|---|---|
1 | Django | 76,100 |
2 | fastapi | 69,409 |
3 | Flask | 65,963 |
4 | Tornado | 21,470 |
5 | AIOHTTP | 14,445 |
6 | Bottle | 8,255 |
7 | Graphene | 7,930 |
8 | web.py | 5,865 |
9 | Pyramid | 3,889 |
10 | Masonite | 2,131 |
11 | django-unicorn | 2,124 |
12 | web2py | 2,074 |
13 | CherryPy | 1,771 |
14 | bytewax | 1,077 |
15 | weppy | 935 |
16 | TurboGears | 798 |
17 | Morepath | 396 |
18 | Websauna | 264 |
19 | mypy-django | 224 |
20 | vank | 166 |
21 | turbo | 131 |
22 | domonic | 129 |
23 | tartiflette-aiohttp | 61 |