On this page
Overview
Flask is a lightweight WSGI web application framework for Python. Built on Werkzeug and Jinja, it provides routing, requests and responses, templates, sessions, and related web primitives while leaving project layout and additional libraries to the application.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Map URLs to Python functions with route decorators
Create a Flask application and bind URLs to view functions with @app.route() or method-specific decorators, while using framework APIs for request data, responses, redirects, and URL generation.
Best fit
Fits Python web and API projects that want a small core and explicit composition
It works well for applications that need to start small, choose their own supporting libraries, and grow into more complex web services without a large prescribed architecture.
Sources: [2]
Before adoption
Do not use the built-in development server in production
The official quickstart and deployment documentation say the flask run development server and debugger are for local development only. Production deployments should use a dedicated WSGI server or hosting platform.
Official sources
- [1]pallets/flask repository(2026-09-30)
- [2]Flask README(2026-09-30)
- [3]Flask 3.1.3 quickstart(2026-09-30)
- [4]Flask production deployment guide(2026-09-30)
- [5]Flask 3.1.3 package metadata(2026-09-30)
- [6]Flask 3.1.3 release(2026-09-30)
- [7]Flask BSD-3-Clause license(2026-09-30)
Supplemental curator note
Flask keeps the core small and lets applications choose supporting libraries, but production servers, databases, authentication, and other infrastructure remain explicit design choices. Version 3.1.3 is a security fix release.
Try it in 3 steps
- 1
Install Flask 3.1.3
Flask 3.1.3 requires Python 3.9 or newer. Install it in a virtual environment with the version pinned.
python -m pip install Flask==3.1.3 - 2
Create a minimal application
Save the Flask application and root route in app.py.
from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello, World!" - 3
Run the development server
Open http://127.0.0.1:5000/ to verify the route. The built-in server is for local development only; use a production WSGI server or hosting platform for deployment.
flask --app app run
Growth
Growth trends · Last 30 days
74,801 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 1
- Open PRs
- 3
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- python
- flask
- wsgi
- web-framework
- werkzeug
- jinja
- pallets
- Stars
- 74,801
- Forks
- 17,010
- Watchers
- 2,118
- Open issues
- 1
- Contributors
- 400
- Owner type
- Organization
- Primary language
- Python
- License
- BSD-3-Clause
- Repository last updated
- Sep 8, 2026
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- tRPC40,677 Stars
1 shared tag(s) · 2 shared category(s)
Carry server types to clients and catch API mismatches during development
TypeScript - FastAPI102,709 Stars
3 shared tag(s) · 1 shared category(s) · Same language
Unify validation, dependency injection, and OpenAPI around Python type declarations
Python - HTTPie CLI38,503 Stars
3 shared tag(s) · 1 shared category(s) · Same language
compose API requests with syntax optimized for human-readable terminal work
Python - Express69,500 Stars
3 shared tag(s)
Build Node.js APIs and web backends by composing routing and middleware into a thin HTTP layer
JavaScript - Gin89,272 Stars
2 shared tag(s) · 2 shared category(s)
Build Go REST APIs and web services with routing, middleware, binding, rendering, and recovery in one HTTP framework
Go - Parlant18,300 Stars
2 shared tag(s) · 1 shared category(s) · Same language
conversation governance for customer-facing AI through guidelines, journeys, and approved responses
Python
Report incorrect information
Tell us if any listing information is incorrect or outdated.