Packages
MarkupSafe provides a text object that escapes special characters so untrusted strings can be safely embedded in HTML and XML without injection attacks.
Jinja2 is a templating engine that renders dynamic content by combining templates with Python-like syntax and data, supporting template inheritance, macros, autoescaping, and sandboxed execution.
Soupsieve is a CSS selector library designed to work with Beautiful Soup 4 to select, match, and filter HTML and XML elements using modern CSS selectors from CSS level 1 through CSS level 4 specifications.
Install it if you use Beautiful Soup for HTML or XML parsing and want modern CSS selector support.
Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.
Flask is a lightweight WSGI web application framework for building web applications in Python, from simple single-page sites to complex multi-route applications.
Mako compiles Python-embedded templates into Python modules for fast rendering, supporting layout inheritance, custom functions, and direct Python expressions within template syntax.
Authlib provides a complete implementation of OAuth 1.0, OAuth 2.0, and OpenID Connect 1.0 for building both authentication clients and servers, with built-in support for JWS, JWK, JWA, and JWT standards.
Gunicorn is a WSGI and ASGI HTTP server for Unix that runs Python web applications with a pre-fork worker model, supporting frameworks like Django, Flask, FastAPI, and Starlette.
Install it if you are deploying a WSGI or ASGI application to production on Unix.
Tornado is a Python web framework and asynchronous networking library that uses non-blocking I/O to handle tens of thousands of concurrent connections, suitable for long polling, WebSockets, and long-lived client connections.
Install it if you are building WebSocket applications, real-time systems, or APIs that must scale to many simultaneous clients without thread-per-connection overhead.
Converts Markdown text to HTML using a Python implementation of John Gruber's Markdown specification, with support for extensions.
Install it if you need to parse Markdown in Python.
Django is a high-level Python web framework for building database-backed web applications with an integrated ORM, admin interface, and form handling.
Install it if you are building a web application that needs ORM, admin interface, authentication, or form handling.
Flask-SQLAlchemy integrates SQLAlchemy database operations into Flask applications, providing a simplified ORM interface with sensible defaults and Flask-aware helpers for common database tasks.
Provides utility functions, custom data types, and helpers that extend SQLAlchemy's core functionality for common database modeling and validation tasks.
Python implementation of Socket.IO realtime client and server for bidirectional communication between clients and servers.
Install it if you need real-time bidirectional communication; verify protocol compatibility with your target client implementation.
Flask-Login handles user session management for Flask applications, providing login, logout, and session persistence without being tied to any specific database or permissions model.
Install it if you need straightforward session-based authentication; consider alternatives if you require active maintenance or modern authentication patterns like…
Pymdown Extensions provides a collection of additional extensions for Python Markdown that add syntax support for advanced formatting, including tabbed content, superfences with syntax highlighting, emoji, and other markup enhancements.
Install it if you need markdown features beyond the standard library.
Converts between emoji characters and their text code names (e.g., `:thumbs_up:` ↔ `👍`), supporting Unicode emoji and aliases across multiple languages.
Adds Cross-Origin Resource Sharing (CORS) headers to Django responses, enabling in-browser requests from other origins to your Django application.
Install it if you need to serve cross-origin requests from browsers or other clients.
Adds rate limiting to Starlette and FastAPI endpoints using decorators, with support for redis, memcached, and in-memory backends to track request limits.
Install it if you need per-endpoint request quotas; skip it only if you handle rate limiting at the infrastructure or reverse-proxy layer instead.
Flask-WTF integrates WTForms with Flask to handle form rendering, validation, and CSRF protection in web applications.
Install it if you are building forms in Flask.
WTForms provides form validation, rendering, and CSRF protection for Python web applications, working independently of any specific web framework or template engine.
Install it if you need form handling in any Python web project.
Django-filter adds dynamic QuerySet filtering to Django views and REST Framework APIs, letting you declaratively build filterable interfaces from URL parameters without writing custom filter logic.
Install it if you need to add filtering to Django views or REST APIs without writing custom filter code.
Provides Python bindings to REST APIs for Atlassian products (Jira, Confluence, Bitbucket, Bamboo, ServiceDesk, Insight, Xray) and supports both Server and Cloud instances.
The main gotcha is ensuring you use the correct authentication method (token for Cloud, password for Server) and staying aware of deprecated methods like traditional…
Adds internationalization (i18n) and localization (l10n) support to Flask applications using Babel and pytz for date, time, and message translation.
Provides emoji and SVG icon extensions for MkDocs Material, enabling insertion of Material, FontAwesome, and Octicons into Markdown using emoji syntax.
django-storages provides pluggable storage backends for Django applications, allowing you to store uploaded files on cloud services or alternative storage systems instead of the local filesystem.
Install it if you need to store Django uploads on cloud storage or non-local backends.
Generates Microsoft Excel 97–2003 XLS spreadsheet files from Python code with no external dependencies.
Bottle is a lightweight WSGI microframework for building web applications in Python, providing routing, templating, and HTTP utilities with no external dependencies beyond the standard library.
Hypercorn is an ASGI and WSGI web server supporting HTTP/1, HTTP/2, WebSockets, and optionally HTTP/3, with pluggable async worker types (asyncio, uvloop, trio).
Converts a Python requests request object into an equivalent cURL command string, useful for debugging, documentation, or reproducing HTTP requests outside Python.
Flask-Caching adds caching support to Flask applications, allowing you to cache view functions, templates, and arbitrary data using multiple backend storage options.
Install it if you need to cache view functions, templates, or arbitrary data in a Flask app.
Integrates Uvicorn's ASGI server with Gunicorn's process manager, allowing you to run ASGI applications under Gunicorn's worker model with dynamic scaling and graceful restarts.
However, maintenance is aging (no releases in 328 days), so evaluate whether the lack of recent updates poses a risk for your deployment timeline.
Parses DATABASE_URL environment variables into Django database configuration dictionaries, supporting PostgreSQL, MySQL, Oracle, SQLite, and other backends with optional connection pooling.
Install it if you use Django and want to follow 12factor principles for database configuration.
Implements OpenID authentication protocol support for Python 3 servers and clients, allowing applications to delegate user authentication to OpenID providers.
However, be aware that active development stopped in 2020; if you require ongoing security patches or feature development, consider whether OpenID remains the right…
ASGI middleware that reads or generates correlation IDs for incoming requests and makes them available to logging, enabling you to trace all logs from a single HTTP request.
Install it if you need to correlate logs across your application; the setup overhead is low and the debugging value is high.
Client library for querying, indexing, and managing documents in Azure AI Search, with support for vector, keyword, and hybrid search queries.
Install it if you need to integrate Azure AI Search into a Python application.
Provides the classic Jupyter Notebook interface as a Jupyter Server extension, allowing you to run the traditional notebook UI alongside modern frontends like JupyterLab.
Provides the cgi and cgitb modules removed from Python 3.13's standard library, allowing existing CGI scripts to run on newer Python versions without modification.
Not recommended for new projects.
Parses Markdown text according to the CommonMark specification and renders it to HTML, JSON, or an abstract syntax tree using pure Python.
Install only if you are maintaining legacy code that already depends on it.
Parses multipart/form-data submissions with both incremental non-blocking and streaming blocking interfaces, supporting ASGI, asyncio, WSGI, and CGI applications.