跳到主要内容 vinta/awesome-python|GitHub 仓库详情 | 极客日志
语言榜单 · 2026-08-26 #4
vinta/awesome-python The definitive list that answers "I want to do X in Python, which tool should I use?"
Python 316k 28k 15 issues Other创建于 2014-06-27 最近推送 2026-08-25 项目官网awesome awesome-list python python-frameworks python-libraries python-tools
An opinionated guide to the best Python frameworks, libraries, and tools.
Visit the website to search and filter projects more easily.
iPulse AI - Open Agentic Investment Research Platform. Inspect deep multi-agent market forecasts and stock picks.
The #10 most-starred repo on GitHub . Put your product in front of Python developers. Become a sponsor .
Categories
AI & ML
Web Development
Projects
AI and Agents Libraries for building AI applications, LLM integrations, and autonomous agents.
Agent Skills
django-ai-plugins - Django backend agent skills for Django, DRF, Celery, and Django-specific code review.
scientific-agent-skills - Agent skills for scientific research and analysis with Python libraries like scikit-learn, polars, and biopython.
sentry-skills - Agent skills the Sentry team uses for code review, pull requests, and Django reviews.
trailofbits-skills - Security skills for vulnerability detection, auditing, and testing.
wshobson-agents - Plugins, agents, and skills for AI coding tools, including Python skills for testing, async, packaging, and uv.
Orchestration
langchain - A framework for building agents and LLM-powered applications.
langgraph - Low-level orchestration framework for building stateful, long-running LLM agents.
pydantic-ai - A Python agent framework for building generative AI applications with structured schemas.
crewai - A framework for orchestrating role-playing autonomous AI agents for collaborative task solving.
Vendor Agent SDKs
claude-agent-sdk - Anthropic's Python SDK for building AI agents on Claude Code's harness — custom tools, in-process MCP servers, hooks.
openai-agents - OpenAI's framework for building and managing AI agents.
google-adk - Google's code-first toolkit for building, evaluating, and deploying AI agents.
Model Context Protocol
mcp - The official Python SDK for building Model Context Protocol servers and clients.
fastmcp - A high-level, Pythonic framework for building MCP servers and clients.
Personal Assistants
hermes-agent - An adaptive personal AI assistant that grows with you.
AstrBot - A multi-platform AI assistant that connects LLMs to chat apps like Telegram, Slack, and QQ, extensible with Python plugins.
Prompt Optimization
dspy - A framework for programming, not prompting, language models.
Data Layer
instructor - A library for extracting structured data from LLMs, powered by Pydantic.
llama-index - A toolkit for building RAG pipelines and agents over your data.
mem0 - An intelligent memory layer for AI agents enabling personalized interactions.
openviking - A context database for AI agents that unifies memory, resources, and skills.
semantica - A graph-native context and knowledge layer for AI agents with reasoning, provenance, and governance.
Pre-trained Models
transformers - The model-definition framework for pretrained models in text, computer vision, audio, video, and multimodal tasks, for inference and training.
sentence-transformers - Compute embeddings, run retrieval, and rerank results with pretrained and fine-tuned models.
LLM Inference and Serving
vllm - A high-throughput and memory-efficient inference and serving engine for LLMs.
sglang - A high-performance serving framework for large language models and multimodal models.
mlx-lm - Run and fine-tune large language models on Apple Silicon with MLX.
LLM Gateways
litellm - Call 100+ LLMs using OpenAI format.
Image and Video Generation
diffusers - A library that provides pre-trained diffusion models for generating and editing images, audio, and video.
Fine-tuning
peft - A library for parameter-efficient fine-tuning of large pretrained models.
trl - A library for post-training transformer language models with SFT, DPO, GRPO, and other trainers.
unsloth - Faster, lower-memory LLM fine-tuning, as a Python library or a desktop app.
axolotl - A framework for fine-tuning and post-training large language models.
Speech
faster-whisper - A Whisper reimplementation on CTranslate2, up to 4 times faster than openai-whisper with less memory.
openai-whisper - A general-purpose automatic speech recognition model trained on 680k hours of multilingual and multitask supervised data.
gTTS - Python library and CLI tool for converting text to speech using Google Translate TTS.
funasr - Industrial-grade speech recognition toolkit with speaker diarization and emotion detection.
Deep Learning
Frameworks
pytorch - Tensors and Dynamic neural networks in Python with strong GPU acceleration.
pytorch-lightning - Deep learning framework to train, deploy, and ship AI products Lightning fast.
jax - A library for high-performance numerical computing with automatic differentiation and JIT compilation.
keras - A high-level deep learning library with support for JAX, TensorFlow, and PyTorch backends.
tensorflow - An end-to-end machine learning platform from Google.
Reinforcement Learning
gymnasium - A standard API for reinforcement learning environments with popular reference environments (gym successor).
stable-baselines3 - PyTorch implementations of Stable Baselines (deep) reinforcement learning algorithms.
Machine Learning
General
scikit-learn - The most popular Python library for Machine Learning with extensive documentation and community support.
pgmpy - A Python library for causal and probabilistic reasoning with graphical models.
feature-engine - sklearn compatible API with the widest toolset for feature engineering and selection.
Gradient Boosting
xgboost - A scalable, portable, and distributed gradient boosting library.
lightgbm - A fast, distributed, high performance gradient boosting framework.
catboost - A fast, scalable, high performance gradient boosting on decision trees library.
Time Series Forecasting
prophet - A tool for producing forecasts for time series with multiple seasonality and trend changes.
statsforecast - Fast statistical forecasting models such as ARIMA, ETS, and Theta, compiled with numba.
sktime - A unified scikit-learn-style framework for forecasting and other time-series learning tasks.
timesfm - A pretrained foundation model from Google Research for time-series forecasting, with non-commercial default weights.
Natural Language Processing Libraries for working with human languages.
General
nltk - A leading platform for building Python programs to work with human language data.
spacy - A library for industrial-strength natural language processing in Python and Cython.
gensim - Topic Modeling for Humans.
stanza - The Stanford NLP Group's official Python library, supporting 60+ languages.
Chinese
jieba - The most popular Chinese text segmentation library.
pypinyin - Convert Chinese hanzi (漢字) to pinyin (拼音).
pangu.py - Paranoid text spacing.
Computer Vision Libraries for image and video analysis, object detection, and OCR.
General
opencv-python - Open Source Computer Vision Library.
ultralytics - Ultralytics YOLO for object detection, segmentation, pose estimation, classification, and tracking.
kornia - Open Source Differentiable Computer Vision Library for PyTorch.
fiftyone - The open-source tool for building high-quality datasets and computer vision models.
OCR
Recommender Systems Libraries for building recommender systems.
annoy - Approximate Nearest Neighbors in C++/Python optimized for memory usage.
implicit - A fast Python implementation of collaborative filtering for implicit datasets.
scikit-surprise - A scikit for building and analyzing recommender systems.
Web Frameworks Traditional full stack web frameworks. Also see Web APIs .
Synchronous
flask - A microframework for Python.
django - A high-level web framework that encourages rapid development and clean, pragmatic design.
bottle - A fast and simple micro-framework distributed as a single file with no dependencies.
pyramid - A small, fast, down-to-earth, open source Python web framework.
fasthtml - The fastest way to create an HTML app.
Asynchronous
starlette - A lightweight ASGI framework and toolkit for building high-performance async services.
tornado - A web framework and asynchronous networking library.
litestar - Production-ready, capable and extensible ASGI Web framework.
reflex - A framework for building reactive, full-stack web applications entirely with Python.
Web APIs Libraries for building RESTful, GraphQL, and RPC APIs.
Django
Flask
flask-restx - Fully featured framework for fast, easy and documented API development with Flask.
flask-smorest - A Flask/Marshmallow-based REST API framework with automatic OpenAPI documentation.
apiflask - A lightweight Python web API framework based on Flask, supporting marshmallow schemas and Pydantic models.
Framework Agnostic
fastapi - A modern, fast, web framework for building APIs with standard Python type hints.
strawberry - A GraphQL library that leverages Python type annotations for schema definition.
connexion - A spec-first framework that automatically handles requests based on your OpenAPI specification.
RPC
grpcio - HTTP/2-based RPC framework with Python bindings, built by Google.
Web Servers ASGI and WSGI compatible web servers.
ASGI
uvicorn - A lightning-fast ASGI server implementation.
granian - A Rust HTTP server for Python applications built on top of Hyper and Tokio, supporting WSGI/ASGI/RSGI.
hypercorn - An ASGI and WSGI Server based on Hyper libraries and inspired by Gunicorn.
WSGI
gunicorn - A pre-fork WSGI server with a native ASGI worker, ported from Ruby's Unicorn project.
waitress - Multi-threaded, powers Pyramid.
WebSocket Libraries for working with WebSocket.
websockets - A library for building WebSocket servers and clients with a focus on correctness and simplicity.
channels - Brings WebSocket, long-poll HTTP, and other async support to Django.
flask-socketio - Socket.IO integration for Flask applications.
autobahn-python - WebSocket & WAMP for Python on Twisted and asyncio .
Template Engines Libraries for rendering text and HTML from templates.
jinja - A modern and designer friendly templating language.
mako - Hyperfast and lightweight templating for the Python platform.
Web Asset Management Tools for managing, storing, compressing and minifying website assets.
whitenoise - Radically simplified static file serving for WSGI applications, with compression and caching headers.
django-storages - A collection of custom storage back ends for Django.
django-compressor - Compresses linked and inline JavaScript or CSS into a single cached file.
Authentication Libraries for implementing authentication schemes.
OAuth
oauthlib - A generic and thorough implementation of the OAuth request-signing logic.
authlib - A comprehensive library for building OAuth, OpenID Connect, and JWT/JWS/JWE/JWK/JWA.
django-allauth - Authentication app for Django that "just works."
django-oauth-toolkit - An OAuth 2.0 authorization server for Django.
JWT
pyjwt - JSON Web Token implementation in Python.
Permissions
django-guardian - Implementation of per-object permissions for Django.
django-rules - A tiny but powerful app providing object-level permissions to Django, without requiring a database.
Admin Panels Libraries for administrative interfaces.
flask-admin - Simple and extensible administrative interface framework for Flask.
django-unfold - A modern Django admin theme for building dashboards, internal tools, and business applications.
sqladmin - An admin interface for SQLAlchemy models in FastAPI and Starlette.
django-grappelli - A jazzy skin for the Django Admin-Interface.
CMS Content Management Systems.
wagtail - A Django content management system.
django-cms - The easy-to-use and developer-friendly enterprise CMS powered by Django.
ERP Enterprise resource planning frameworks.
odoo - A suite of open source business apps: CRM, e-commerce, accounting, inventory, and thousands of community modules.
Static Site Generators Static site generator is a software that takes some text + templates as input and produces HTML files on the output.
pelican - Static site generator that supports Markdown and reST syntax.
nikola - A static website and blog generator.
HTTP Clients Libraries for working with HTTP.
General
requests - HTTP Requests for Humans.
aiohttp - Asynchronous HTTP client/server framework for asyncio and Python.
httpx2 - HTTP/1.1 and HTTP/2 client with sync and async APIs, maintained by Pydantic (httpx fork).
urllib3 - An HTTP library with thread-safe connection pooling, file post, and more.
httpx - A next generation HTTP client for Python.
URL Manipulation
yarl - Yet another URL library.
Web Scraping Libraries to automate web scraping and extract web content.
Frameworks
browser-use - Make websites accessible for AI agents with easy browser automation.
scrapy - A fast high-level web crawling and scraping framework.
crawl4ai - An open-source, LLM-friendly web crawler that provides lightning-fast, structured data extraction specifically designed for AI agents.
stagehand - A fast and token-efficient browser automation SDK to extract data and perform self-healing actions on web pages.
jev-ultrafast - A fast browser agent that picks actions from an indexed table of page elements through TypeSafe's hosted Jev API, using a small LLM only to type text.
Content Extraction
markdownify - Convert HTML to Markdown, with customizable tag handling.
feedparser - Universal feed parser.
trafilatura - A tool for gathering text and metadata from the web, with built-in content filtering.
Email Libraries for sending email.
aiosmtplib - An asyncio SMTP client.
django-anymail - Django email backends and webhooks for transactional email services such as Amazon SES, Brevo, Mailgun, Postmark, and Resend.
yagmail - Yet another Gmail/SMTP client.
ORM Libraries that implement Object-Relational Mapping or data mapping techniques.
Relational Databases
sqlalchemy - The Python SQL Toolkit and Object Relational Mapper.
django.db.models - (part of Django) The Django ORM .
peewee - A small, expressive ORM.
sqlmodel - SQLModel is based on Python type annotations, and powered by Pydantic and SQLAlchemy.
NoSQL Databases
Database Drivers Libraries for connecting and operating databases.
MySQL - awesome-mysql
pymysql - A pure-Python MySQL and MariaDB client library, based on PEP 249.
mysqlclient - MySQL and MariaDB connector (MySQLdb1 fork).
PostgreSQL - awesome-postgres
psycopg - A PostgreSQL adapter for Python, the successor to psycopg2.
asyncpg - A fast PostgreSQL Database Client Library for Python/asyncio.
SQLite - awesome-sqlite
sqlite3 - (Python standard library) SQLite interface compliant with DB-API 2.0.
sqlite-utils - Python CLI utility and library for manipulating SQLite databases.
ClickHouse
Other Relational Databases
pyodbc - An ODBC bridge for connecting to SQL Server and any other ODBC-accessible database.
oracledb - The official Python driver for Oracle Database, successor to cx_Oracle.
mssql-python - Official Microsoft driver for SQL Server and Azure SQL, built on ODBC for high performance.
NoSQL Databases
redis - The Python client for Redis.
pymongo - The official Python client for MongoDB.
cassandra-driver - The Python Driver for Apache Cassandra.
Database In-process databases usable directly from Python.
Analytical
duckdb - An in-process SQL OLAP database management system; optimized for analytics and fast queries, similar to SQLite but for analytical workloads.
chdb - In-process OLAP SQL engine with the full ClickHouse dialect, zero-copy pandas/Arrow interop, and federation to remote ClickHouse clusters via remoteSecure().
Vector
lancedb - A developer-friendly embedded retrieval database for multimodal AI.
chromadb - An open-source embedding database for building AI applications with embeddings and semantic search.
zvec - A lightweight, in-process vector database that embeds directly into applications.
Key-Value & Document
tinydb - A tiny, document-oriented database.
Caching Libraries for caching data.
cachetools - Extensible memoizing collections and decorators.
diskcache - SQLite and file backed cache backend, compatible with Django.
hishel - RFC 9111 compliant HTTP caching for clients like httpx and requests and servers like FastAPI, with sync and async support.
django-cacheops - A slick ORM cache with automatic granular event-driven invalidation.
dogpile.cache - dogpile.cache is a next generation replacement for Beaker made by the same authors.
Search Libraries and software for indexing and performing search queries on data.
Serialization Libraries for serializing complex data types.
msgpack - MessagePack serializer implementation for Python.
orjson - Fast, correct JSON library.
marshmallow - A lightweight library for converting complex objects to and from simple Python datatypes.
msgspec - A fast serialization and validation library with built-in support for JSON, MessagePack, YAML, and TOML.
Data Analysis Libraries for data analysis.
pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.
polars - A fast DataFrame library implemented in Rust with a Python API.
ibis-framework - A portable Python dataframe library with a single API for 20+ backends.
Data Ingestion / ETL Libraries for data extraction, transformation, and loading pipelines across multiple sources and destinations.
General
awswrangler - Pandas integration with AWS services like Athena, Glue, Redshift, S3, and DynamoDB.
dlt - A Python library for building data pipelines with automatic schema inference, incremental loading, and support for multiple sources and destinations.
Financial Data
yfinance - Easy Pythonic way to download market and financial data from Yahoo Finance.
akshare - A financial data interface library, with data provided for academic research only.
edgartools - Library for downloading structured data from SEC EDGAR filings and XBRL financial statements.
openbb - A financial data platform for analysts, quants and AI agents.
Data Validation Libraries for validating data.
pydantic - Data validation using Python type hints.
jsonschema - An implementation of JSON Schema for Python.
great-expectations - A data quality framework for validating, documenting, and profiling data with declarative expectations.
pandera - A data validation library for dataframes, with support for pandas, polars, PySpark, and more.
Data Visualization
Plotting
matplotlib - A comprehensive library for creating static, animated, and interactive visualizations.
plotly - Interactive graphing library for Python.
seaborn - Statistical data visualization using Matplotlib.
altair - Declarative statistical visualization library for Python.
bokeh - Interactive Web Plotting for Python.
Specialized
graphviz - Simple Python interface for creating and rendering Graphviz graphs.
cartopy - A cartographic python library with matplotlib support.
graphify - Turn any folder of code, SQL schemas, docs, papers, images, or videos into a queryable knowledge graph.
Dashboards and Apps
streamlit - A framework which lets you build dashboards, generate reports, or create chat apps in minutes.
dash - A framework for building data apps and dashboards in pure Python, built on Plotly.
gradio - Build and share machine learning apps, all in Python.
Geolocation Libraries for geocoding addresses and working with latitudes and longitudes.
Science
Core
numpy - A fundamental package for scientific computing with Python.
scipy - Fundamental algorithms for scientific computing in Python.
numba - A NumPy-aware JIT compiler for Python, using LLVM.
Symbolic Mathematics
sympy - A Python library for symbolic mathematics.
Statistics
statsmodels - Statistical modeling and econometrics in Python.
Biology and Chemistry
rdkit - Cheminformatics and Machine Learning Software.
biopython - Biopython is a set of freely available tools for biological computation.
Physics and Engineering
pint - Operate and manipulate physical quantities with units and dimensional analysis.
astropy - A community Python library for Astronomy.
obspy - A Python toolbox for seismology.
Simulation and Modeling
pymc - Probabilistic programming and Bayesian modeling in Python.
simpy - A process-based discrete-event simulation framework.
mesa - An agent-based modeling framework for building, analyzing, and visualizing complex system simulations.
Graphs and Networks
networkx - A high-productivity software for complex networks.
Computational Geometry
shapely - Manipulation and analysis of geometric objects in the Cartesian plane.
Other
colour-science - Implementing a comprehensive number of colour theory transformations and algorithms.
manim - An animation engine for explanatory math videos.
Quantum Computing Libraries for quantum computing.
qiskit - An IBM-backed quantum SDK for building, simulating, and running circuits on real quantum hardware.
qutip - Quantum Toolbox in Python.
pennylane - A cross-platform library for quantum computing, quantum machine learning, and quantum chemistry.
cirq - A Google-developed framework focused on hardware-aware quantum circuit design for NISQ devices.
Algorithms and Design Patterns Python implementation of data structures, algorithms and design patterns. Also see awesome-algorithms .
Algorithms
sortedcontainers - Fast and pure-Python implementation of sorted collections.
algorithms - Minimal examples of data structures and algorithms.
thealgorithms - All Algorithms implemented in Python.
Design Patterns
python-patterns - A collection of design patterns and idioms in Python.
python-statemachine - Expressive statecharts and finite state machines with a declarative API, in sync and async codebases.
Interactive Interpreter Interactive Python interpreters (REPL).
ipython - A powerful interactive Python shell, and the kernel behind Jupyter notebooks.
notebook - A web-based notebook environment for interactive computing.
marimo - A reactive notebook for Python, stored as pure Python and runnable as a script or app.
ptpython - Advanced Python REPL built on top of the python-prompt-toolkit .
Code Analysis
General
import-linter - A linter that enforces architectural constraints on imports between Python modules.
vulture - A tool for finding and analyzing dead Python code.
complexipy - Cognitive complexity analysis for Python code, written in Rust.
prospector - A tool to analyze Python code.
Git Hooks
pre-commit - A framework for managing and maintaining multi-language pre-commit hooks.
Linters and Formatters
ruff - An extremely fast Python linter and code formatter.
black - The uncompromising Python code formatter.
isort - A Python utility / library to sort imports.
pylint - A fully customizable source code analyzer.
flake8 - A wrapper around pycodestyle, pyflakes and McCabe.
bandit - A tool designed to find common security issues in Python code.
Refactoring
rope - Rope is a python refactoring library.
Type Checkers - awesome-python-typing
mypy - A static type checker for Python.
ty - An extremely fast Python type checker and language server.
pyright - Full-featured static type checker for Python from Microsoft, the engine behind Pylance.
pyrefly - A fast type checker and language server for Python.
Testing
Frameworks
pytest - A mature full-featured Python testing tool.
hypothesis - Hypothesis is an advanced Quickcheck style property based testing library.
robotframework - A generic test automation framework.
Test Runners
tox - Auto builds and tests distributions in multiple Python versions.
nox - Flexible test automation for Python.
Browser Automation
Load Testing
locust - Scalable user load testing tool written in Python.
API Testing
schemathesis - A tool for automatic property-based testing of web APIs from OpenAPI or GraphQL schemas.
Mock
unittest.mock - (Python standard library) A mocking and patching library.
responses - A utility library for mocking out the requests Python library.
vcrpy - Record and replay HTTP interactions on your tests.
respx - Mock HTTPX with awesome request patterns and response side effects.
time-machine - Travel through time in your tests by mocking the current time at the C level.
Object Factories
factory-boy - A test fixtures replacement for Python.
polyfactory - A mock data generation library based on type hints (continuation of pydantic-factories).
Code Coverage
Fake Data
faker - A Python package that generates fake data.
mimesis - A Python library for generating fake but realistic data in multiple languages and locales.
Debugging Tools Libraries for debugging code.
pdb-like Debugger
ipdb - IPython-enabled pdb .
pudb - A full-screen, console-based Python debugger.
Tracing
viztracer - A low-overhead tool that traces and visualizes Python code execution.
Profiler
py-spy - A sampling profiler for Python programs. Written in Rust.
memray - A memory profiler that tracks allocations in Python code, native extensions, and the interpreter itself.
pyinstrument - A statistical wall-clock profiler with low overhead and readable call-tree output.
scalene - A high-performance, high-precision CPU, GPU, and memory profiler for Python.
Others
django-debug-toolbar - Display various debug information for Django.
icecream - Inspect variables, expressions, and program execution with a single, simple function call.
flask-debugtoolbar - A port of the django-debug-toolbar to flask.
Build Tools Task runners and software build tools. If you're looking for Python packaging/build tools, see Package Management .
invoke - A tool for managing shell-oriented subprocesses and organizing executable Python code into CLI-invokable tasks.
poethepoet - A task runner that defines tasks in pyproject.toml and works with poetry or uv.
scons - A software construction tool.
doit - A task runner and build tool.
Documentation Libraries for generating project documentation.
sphinx - Python Documentation generator.
mkdocs-material - A documentation framework and Material Design theme built on MkDocs.
diagrams - Diagram as Code.
pdoc - Auto-generates API documentation for Python projects.
zensical - A modern static site generator for technical documentation.
DevOps Tools Software and libraries for DevOps.
Cloud Providers
boto3 - Python interface to Amazon Web Services.
awscli - Universal Command Line Interface for Amazon Web Services; the PyPI package is v1, in maintenance mode, while v2 ships as AWS's bundled installer.
azure-sdk-for-python - Microsoft Azure SDK for Python, published as per-service packages.
google-cloud-python - Google Cloud client libraries for Python, published as per-service packages.
Configuration Management
ansible - A radically simple IT automation platform.
cloud-init - A multi-distribution package that handles early initialization of a cloud instance.
pyinfra - Turns Python code into shell commands and runs them on your servers.
salt - Infrastructure automation and management system.
Deployment
fabric - A simple, Pythonic tool for remote execution and deployment.
chalice - A Python serverless microframework for AWS.
Monitoring and Processes
psutil - A cross-platform process and system utilities module.
sentry-sdk - Sentry SDK for Python.
supervisor - Supervisor process control system for UNIX.
flower - A real-time monitor and web admin for Celery task queues.
sh - A full-fledged subprocess replacement for Python.
Other
borgbackup - A deduplicating archiver with compression and encryption.
Distributed Computing Frameworks and libraries for Distributed Computing.
pyspark - Apache Spark Python API.
dask - A flexible parallel computing library for analytic computing.
ray - A unified framework for scaling AI and Python applications.
joblib - Parallel computing and disk-based caching for Python functions.
mpi4py - Python bindings for MPI.
Task Queues Libraries for working with task queues.
celery - An asynchronous task queue/job queue based on distributed message passing.
rq - Simple job queues for Python.
dramatiq - A fast and reliable background task processing library for Python 3.
huey - A little task queue with multi-process, multi-thread, or greenlet workers.
taskiq - Distributed task queue with native asyncio support and pluggable brokers.
Messaging Libraries for working with message brokers and event streaming.
confluent-kafka - Confluent's Python client for Apache Kafka, built on librdkafka.
pika - Pure-Python RabbitMQ/AMQP 0-9-1 client library.
paho-mqtt - The Eclipse Paho MQTT client for Python.
faststream - A framework for building asynchronous services over Apache Kafka, RabbitMQ, NATS, MQTT and Redis.
Job Schedulers Libraries for scheduling jobs.
Task Scheduling
apscheduler - A light but powerful in-process task scheduler that lets you schedule functions.
schedule - Python job scheduling for humans.
Workflow Orchestration
temporalio - Temporal SDK for durable, fault-tolerant workflows that survive crashes and retries.
dagster - An orchestration platform for the development, production, and observation of data assets.
apache-airflow - Airflow is a platform to programmatically author, schedule and monitor workflows.
prefect - A modern workflow orchestration framework that makes it easy to build, schedule and monitor robust data pipelines.
Logging Libraries for generating and working with logs.
logging - (Python standard library) Logging facility for Python.
structlog - Structured logging made easy.
loguru - Library which aims to bring enjoyable logging in Python.
logfire - The observability platform for Python, from the makers of Pydantic.
Network Virtualization Tools and libraries for packet manipulation and network device automation.
scapy - A brilliant packet manipulation library.
netmiko - Multi-vendor library to simplify CLI connections to network devices.
napalm - Cross-vendor API to manipulate network devices.
CLI Development Libraries for building command-line applications.
General
argparse - (Python standard library) Command-line option and argument parsing.
click - A package for creating beautiful command line interfaces in a composable way.
typer - Modern CLI framework that uses Python type hints. Built on Click.
prompt_toolkit - A library for building powerful interactive command lines.
cyclopts - Build CLIs from type-hinted functions, with docstring-based help.
Terminal Rendering
rich - Python library for rich text and beautiful formatting in the terminal. Also provides a great RichHandler log handler.
tqdm - Fast, extensible progress bar for loops and CLI.
colorama - Cross-platform colored terminal text.
alive-progress - A new kind of Progress Bar, with real-time throughput, eta and very cool animations.
TUI Frameworks
textual - A framework for building interactive user interfaces that run in the terminal and the browser.
urwid - A library for creating terminal GUI applications with strong support for widgets, events, rich colors, etc.
asciimatics - A package to create full-screen text UIs (from interactive forms to ASCII animations).
CLI Tools
Database CLIs
pgcli - PostgreSQL CLI with autocompletion and syntax highlighting.
mycli - MySQL CLI with autocompletion and syntax highlighting.
litecli - SQLite CLI with autocompletion and syntax highlighting.
iredis - Redis CLI with autocompletion and syntax highlighting.
Downloaders
yt-dlp - A command-line program to download videos from YouTube and other video sites, a fork of youtube-dl.
HTTP Clients
httpie - A command line HTTP client, a user-friendly cURL replacement.
Project Scaffolding
cookiecutter - A command-line utility that creates projects from cookiecutters (project templates).
copier - A library and command-line utility for rendering project templates.
Shells
xonsh - A Python-powered shell. Full-featured and cross-platform.
Terminal Workflow
GUI Development Libraries for working with graphical user interface applications.
Desktop
PyGObject - Python Bindings for GLib/GObject/GIO/GTK.
dearpygui - A simple GPU-accelerated Python GUI framework.
Kivy - An open-source framework for cross-platform GUI apps on desktop, mobile, and embedded platforms.
wxPython - A cross-platform GUI toolkit that wraps the wxWidgets C++ library.
toga - A Python native, OS native GUI toolkit.
Qt
PySide6 - Qt for Python offers the official Python bindings for Qt , largely API-compatible with PyQt6 but with different licensing.
PyQt6 - Python bindings for the Qt cross-platform application and UI framework.
Tkinter
tkinter - (Python standard library) The standard Python interface to the Tcl/Tk GUI toolkit.
customtkinter - A modern and customizable python UI-library based on Tkinter.
Web-based
pywebview - A lightweight cross-platform native wrapper around a webview component.
nicegui - An easy-to-use, Python-based UI framework, which shows up in your web browser.
flet - Cross-platform GUI framework for building modern apps in pure Python.
Text Processing Libraries for parsing and manipulating plain texts.
Encoding and Unicode
charset-normalizer - Universal character encoding detector, and a dependency of requests.
chardet - Python character encoding detector.
ftfy - Makes Unicode text less broken and more consistent automagically.
Fuzzy Matching
rapidfuzz - Rapid fuzzy string matching using various string metrics, with a C++ core.
General
difflib - (Python standard library) Helpers for computing deltas.
pyfiglet - An implementation of figlet written in Python.
Internationalization
babel - An internationalization library for Python.
Parser
pygments - A generic syntax highlighter.
pyparsing - A Python library for creating PEG parsers.
sqlparse - A non-validating SQL parser.
phonenumbers - Parsing, formatting, storing and validating international phone numbers.
parsy - Easy, generic parser combinator library for creating parsers.
Transliteration and Slugs
python-slugify - A Python slugify library that translates unicode to ASCII.
unidecode - ASCII transliterations of Unicode text.
Unique identifiers
shortuuid - A generator library for concise, unambiguous and URL-safe UUIDs.
HTML Manipulation Libraries for working with HTML and XML.
lxml - A very fast, easy-to-use and versatile library for handling HTML and XML.
beautifulsoup4 - Providing Pythonic idioms for iterating, searching, and modifying HTML or XML.
xmltodict - Working with XML feel like you are working with JSON.
markupsafe - Safely adds untrusted strings to HTML/XML markup.
justhtml - A pure Python HTML5 parser that sanitizes untrusted HTML by default.
File Format Processing Libraries for parsing and manipulating specific file formats.
General
pyelftools - Parsing and analyzing ELF files and DWARF debugging information.
tablib - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
File Conversion
markitdown - Python tool for converting files and office documents to Markdown.
docling - Library for converting documents into structured data.
Excel
openpyxl - A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
xlsxwriter - A Python module for creating Excel .xlsx files.
Word
python-docx - Creates, reads, and updates Microsoft Word (.docx) files.
PowerPoint
python-pptx - Python library for creating and updating PowerPoint (.pptx) files.
PDF
pypdf - A library capable of splitting, merging, cropping, and transforming PDF pages.
pymupdf - A fast library for extracting, rendering, and editing PDF and other document formats, built on MuPDF.
reportlab - An open-source library for generating PDFs and graphics.
pdfminer.six - A community-maintained fork of PDFMiner for extracting information from PDF documents.
HTML-to-PDF
weasyprint - A visual rendering engine for HTML and CSS that can export to PDF.
Markdown
markdown-it-py - Markdown parser with 100% CommonMark support, extensions, and syntax plugins.
markdown - A Python implementation of John Gruber's Markdown.
mistune - A fast yet powerful Python Markdown parser with renderers and plugins.
Data Formats
tomllib - (Python standard library) Parse TOML files.
pyyaml - A full-featured YAML framework for Python.
File Manipulation Libraries for file manipulation.
mimetypes - (Python standard library) Map filenames to MIME types.
pathlib - (Python standard library) A cross-platform, object-oriented path library.
watchfiles - Simple, modern and fast file watching and code reload in python.
watchdog - API and shell utilities to monitor file system events.
python-magic - A Python interface to the libmagic file type identification library.
Image Processing Libraries for manipulating images.
Barcodes and QR Codes
qrcode - A pure Python QR Code generator.
python-barcode - Create barcodes in Python with no extra dependencies.
General
pillow - Pillow is the friendly PIL fork.
scikit-image - A Python library for (scientific) image processing.
rembg - A tool to remove image backgrounds.
wand - Python bindings for MagickWand , C API for ImageMagick.
pyvips - A binding for libvips, a fast image processing library with low memory needs.
Image Serving
thumbor - A smart imaging service. It enables on-demand crop, re-sizing and flipping of images.
Audio & Video Processing Libraries for manipulating audio, video, and their metadata.
Audio
soundfile - An audio library for reading and writing sound files, based on libsndfile, CFFI, and NumPy.
librosa - Python library for audio and music analysis.
pydub - Manipulate audio with a simple and easy high level interface.
Video
av - Pythonic bindings for FFmpeg's libraries.
moviepy - A module for script-based movie editing with many formats, including animated GIFs.
Metadata
mutagen - A Python module to handle audio metadata.
tinytag - A library for reading audio file metadata of MP3, MP4, WAV, OGG, FLAC, WMA, and AIFF files.
beets - A music library manager and MusicBrainz tagger.
Game Development Awesome game development libraries.
3D Engines
panda3d - 3D game engine developed jointly by Disney and contributors from around the world.
Game Frameworks
pyglet - A cross-platform windowing and multimedia library for Python.
pygame-ce - An actively developed drop-in replacement with new features and performance improvements (pygame fork).
pygame - Pygame is a set of Python modules designed for writing games.
arcade - An easy-to-use library for creating 2D arcade games.
Visual Novels
renpy - A Visual Novel engine.
Implementations Implementations of Python.
cpython - Default, most widely used implementation of the Python programming language written in C.
micropython - A lean and efficient Python implementation for microcontrollers and constrained systems.
pypy - A very fast and compliant implementation of the Python language.
Cython - Optimizing Static Compiler for Python.
pyodide - Python distribution for the browser and Node.js based on WebAssembly.
Built-in Classes Enhancement Libraries for enhancing Python built-in classes.
attrs - Replacement for __init__, __eq__, __repr__, etc. boilerplate in class definitions.
bidict - Efficient, Pythonic bidirectional map data structures and related functionality.
uuid-utils - A fast, Rust-backed drop-in replacement for Python's built-in uuid module.
python-box - Python dictionaries with advanced dot notation access.
Functional Programming Functional Programming with Python.
functools - (Python standard library) Higher-order functions and operations on callable objects.
more-itertools - More routines for operating on iterables, beyond itertools.
toolz - A collection of functional utilities for iterators, functions, and dictionaries. Also available as cytoolz for Cython-accelerated performance.
funcy - A fancy and practical functional tools.
returns - A set of type-safe monads, transformers, and composition utilities.
Asynchronous Programming Libraries for asynchronous, concurrent and parallel execution. Also see awesome-asyncio .
Async I/O
asyncio - (Python standard library) Asynchronous I/O, event loop, coroutines and tasks.
anyio - A high-level async concurrency and networking framework that works on top of asyncio or trio.
uvloop - Ultra fast asyncio event loop.
trio - A friendly library for async concurrency and I/O.
gevent - A coroutine-based Python networking library that uses greenlet .
Twisted - An event-driven networking engine.
Parallelism
concurrent.futures - (Python standard library) A high-level interface for asynchronously executing callables.
multiprocessing - (Python standard library) Process-based parallelism.
Date and Time Libraries for working with dates and times.
zoneinfo - (Python standard library) IANA time zone support. Brings the tz database into Python.
python-dateutil - Extensions to the standard Python datetime module.
dateparser - A Python parser for human-readable dates in over 200 language locales.
pendulum - Python datetimes made easy.
whenever - A modern datetime library, type-safe and DST-safe, in Rust or pure Python.
Environment Management Libraries for Python version and virtual environment management.
virtualenv - A tool to create isolated Python environments.
uv - An extremely fast Python version, package and project manager, written in Rust.
pyenv - Simple Python version management.
Package Management Libraries for package and dependency management.
Package Managers
pip - The package installer for Python.
uv - An extremely fast Python version, package and project manager, written in Rust.
poetry - Python dependency management and packaging made easy.
hatch - Modern, extensible Python project manager for environments, builds, and publishing.
pipx - Install and Run Python Applications in Isolated Environments. Like npx in Node.js.
conda - Cross-platform, Python-agnostic binary package manager.
Build Backends
setuptools - The historical and still most widely used pyproject build backend.
hatchling - Modern, extensible build backend from the hatch project.
poetry-core - Poetry's PEP 517 build backend, usable without Poetry itself.
flit-core - Minimal, dependency-free build backend for pure-Python packages.
uv-build - uv's fast, minimal build backend for pure-Python projects.
Package Repositories Local PyPI repository servers, proxies, and mirrors.
pypiserver - A minimal PyPI server for uploading and installing packages with pip.
devpi - PyPI server and packaging/testing/release tool.
bandersnatch - PyPI mirroring tool provided by Python Packaging Authority (PyPA).
Distribution Libraries to create packaged executables for release distribution.
Executables
pyinstaller - Converts Python programs into stand-alone executables (cross-platform).
Nuitka - Compiles Python programs into high-performance standalone executables (cross-platform).
pex - A tool for building self-contained Python executable environments (PEP 441 zipapps).
cx-Freeze - Converts Python scripts into standalone executables and installers for Windows, macOS, and Linux.
Obfuscation
pyarmor - A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.
Configuration Files Libraries for storing and parsing configuration options.
configparser - (Python standard library) INI file parser.
python-dotenv - Reads key-value pairs from a .env file and sets them as environment variables.
pydantic-settings - Settings management using Pydantic models with validation, loading from environment variables and secrets files.
hydra-core - Hydra is a framework for elegantly configuring complex applications.
dynaconf - Dynaconf is a configuration manager with plugins for Django and Flask.
Cryptography Libraries for cryptographic primitives and secure protocols.
cryptography - A package designed to expose cryptographic primitives and recipes to Python developers.
pynacl - Python binding to libsodium, a fork of the Networking and Cryptography (NaCl) library.
paramiko - The leading native Python SSHv2 protocol library.
itsdangerous - Safely pass trusted data to untrusted environments and back.
Penetration Testing Frameworks and tools for penetration testing.
mitmproxy - An interactive TLS-capable intercepting HTTP proxy for penetration testers and software developers.
impacket - A collection of Python classes for working with network protocols, widely used for Windows and Active Directory testing.
sqlmap - Automatic SQL injection and database takeover tool.
pwntools - A CTF framework and exploit development library.
sherlock-project - Hunt down social media accounts by username across social networks.
Supply Chain Security Tools for auditing dependencies against known vulnerabilities.
Web Security Libraries for application-layer web security.
nh3 - Python binding to the ammonia HTML sanitizer, a fast replacement for bleach.
secure - HTTP security headers for Python web applications with ASGI and WSGI middleware.
Hardware Libraries for programming with hardware.
pyserial - Python serial port access library for Windows, macOS, Linux, and BSD.
pynput - A library to control and monitor input devices.
bleak - A cross platform Bluetooth Low Energy Client for Python using asyncio.
jumpstarter - A hardware-in-the-loop testing framework with a Python client library for automated testing on real and virtual hardware.
Microsoft Windows Python programming on Microsoft Windows.
pywin32 - Python Extensions for Windows.
pythonnet - Python Integration with the .NET Common Language Runtime (CLR).
pyenv-win - A Python version manager for Windows (rbenv-win fork).
winpython - Portable Python distribution for Windows.
Miscellaneous Useful libraries or tools that don't fit in the categories above.
blinker - A fast Python in-process signal/event dispatching system.
boltons - A set of pure-Python utilities.
Resources Where to discover learning resources or new Python libraries.
Newsletters
Podcasts
Websites
Contributing
If you have any question about this opinionated list, do not hesitate to contact @vinta on X (Twitter).