---
visibility: public
---

# Python

**repo:** [vinta/awesome-python](https://github.com/vinta/awesome-python)  
**category:** [[programming-languages|Programming Languages]]
**related:** [[machine-learning|Machine Learning]] · [[data-science|Data Science]] · [[deep-learning|Deep Learning]] · [[flask|Flask]] · [[fastapi|FastAPI]]

---

# Awesome Python

An opinionated list of Python frameworks, libraries, tools, and resources.

# **Sponsors**

> The **#10 most-starred repo on GitHub**. Put your product in front of Python developers. [Become a sponsor](SPONSORSHIP.md).

# Categories

**AI & ML**

- [AI and Agents](#ai-and-agents)
- [Deep Learning](#deep-learning)
- [Machine Learning](#machine-learning)
- [Natural Language Processing](#natural-language-processing)
- [Computer Vision](#computer-vision)
- [Recommender Systems](#recommender-systems)

**Web Development**

- [Web Frameworks](#web-frameworks)
- [Web APIs](#web-apis)
- [Web Servers](#web-servers)
- [WebSocket](#websocket)
- [Template Engines](#template-engines)
- [Web Asset Management](#web-asset-management)
- [Authentication](#authentication)
- [Admin Panels](#admin-panels)
- [CMS](#cms)
- [Static Site Generators](#static-site-generators)

**HTTP & Scraping**

- [HTTP Clients](#http-clients)
- [Web Scraping](#web-scraping)
- [Email](#email)

**Database & Storage**

- [ORM](#orm)
- [Database Drivers](#[database](/@harrisonqian/awesome/wiki/databases/database)-drivers)
- [Database](#database)
- [Caching](#caching)
- [Search](#search)
- [Serialization](#serialization)

**Data & Science**

- [Data Analysis](#data-analysis)
- [Data Validation](#data-validation)
- [Data Visualization](#data-visualization)
- [Geolocation](#geolocation)
- [Science](#science)
- [Quantum Computing](#quantum-computing)

**Developer Tools**

- [Algorithms and Design Patterns](#[algorithms](/@harrisonqian/awesome/wiki/theory/algorithms)-and-design-patterns)
- [Interactive Interpreter](#interactive-interpreter)
- [Code Analysis](#code-analysis)
- [Testing](#testing)
- [Debugging Tools](#debugging-tools)
- [Build Tools](#build-tools)
- [Documentation](#documentation)

**DevOps**

- [DevOps Tools](#devops-tools)
- [Distributed Computing](#distributed-computing)
- [Task Queues](#task-queues)
- [Job Schedulers](#job-schedulers)
- [Logging](#logging)
- [Network Virtualization](#network-virtualization)

**CLI & GUI**

- [CLI Development](#cli-development)
- [CLI Tools](#cli-tools)
- [GUI Development](#gui-development)

**Text & Documents**

- [Text Processing](#text-processing)
- [HTML Manipulation](#html-manipulation)
- [File Format Processing](#file-format-processing)
- [File Manipulation](#file-manipulation)

**Media**

- [Image Processing](#image-processing)
- [Audio & Video Processing](#audio--video-processing)
- [Game Development](#game-development)

**Python Language**

- [Implementations](#implementations)
- [Built-in Classes Enhancement](#built-in-classes-enhancement)
- [Functional Programming](#functional-programming)
- [Asynchronous Programming](#asynchronous-programming)
- [Date and Time](#date-and-time)

**Python Toolchain**

- [Environment Management](#environment-management)
- [Package Management](#package-management)
- [Package Repositories](#package-repositories)
- [Distribution](#distribution)
- [Configuration Files](#configuration-files)

**Security**

- [Cryptography](#cryptography)
- [Penetration Testing](#penetration-testing)

**Miscellaneous**

- [Hardware](#hardware)
- [Microsoft Windows](#microsoft-windows)
- [Miscellaneous](#miscellaneous)

---

**AI & ML**

## AI and Agents

_Libraries for building AI applications, LLM integrations, and autonomous agents._

- Agent Skills
  - [django-ai-plugins](https://github.com/vintasoftware/django-ai-plugins) - Django backend agent skills for Django, DRF, Celery, and Django-specific [code review](/@harrisonqian/awesome/wiki/work/code-review).
  - [sentry-skills](https://github.com/getsentry/skills) - Python-focused engineering skills for [code review](/@harrisonqian/awesome/wiki/work/code-review), debugging, and backend workflows.
  - [trailofbits-skills](https://github.com/trailofbits/skills) - Python-friendly [security](/@harrisonqian/awesome/wiki/security/security) skills for auditing, [testing](/@harrisonqian/awesome/wiki/testing/testing), and safer backend development.
- Orchestration
  - [autogen](https://github.com/microsoft/autogen) - A programming framework for building agentic AI applications.
  - [crewai](https://github.com/crewAIInc/crewAI) - A framework for orchestrating role-playing autonomous AI agents for collaborative task solving.
  - [dspy](https://github.com/stanfordnlp/dspy) - A framework for programming, not prompting, language models.
  - [hermes-agent](https://github.com/nousresearch/hermes-agent) - An adaptive AI agent framework that grows with you.
  - [langchain](https://github.com/langchain-ai/langchain) - Building applications with LLMs through composability.
  - [pydantic-ai](https://github.com/pydantic/pydantic-ai) - A Python agent framework for building [generative AI](/@harrisonqian/awesome/wiki/computer-science/generative-ai) applications with structured schemas.
  - [TradingAgents](https://github.com/TauricResearch/TradingAgents) - A multi-agents LLM financial trading framework.
- Data Layer
  - [instructor](https://github.com/567-labs/instructor) - A library for extracting structured data from LLMs, powered by Pydantic.
  - [llama-index](https://github.com/run-llama/llama_index) - A data framework for your LLM application.
  - [mem0](https://github.com/mem0ai/mem0) - An intelligent memory layer for AI agents enabling personalized interactions.
- Pre-trained Models and Inference
  - [diffusers](https://github.com/huggingface/diffusers) - A library that provides pre-trained diffusion models for generating and editing images, audio, and video.
  - [sglang](https://github.com/sgl-project/sglang) - A high-performance serving framework for large language models and multimodal models.
  - [transformers](https://github.com/huggingface/transformers) - A framework that lets you easily use pre-trained transformer models for NLP, vision, and audio tasks.
  - [unsloth](https://github.com/unslothai/unsloth) - A library for faster LLM fine-tuning and training with reduced memory usage.
  - [vllm](https://github.com/vllm-project/vllm) - A high-throughput and memory-efficient inference and serving engine for LLMs.

## Deep Learning

_Frameworks for Neural Networks and Deep Learning. Also see [awesome-deep-learning](https://github.com/ChristosChristofidis/awesome-deep-learning)._

- [jax](https://github.com/jax-ml/jax) - A library for high-performance numerical computing with automatic differentiation and JIT compilation.
- [keras](https://github.com/keras-team/keras) - A high-level [deep learning](/@harrisonqian/awesome/wiki/computer-science/deep-learning) library with support for JAX, [TensorFlow](/@harrisonqian/awesome/wiki/computer-science/tensorflow), and PyTorch backends.
- [pytorch-lightning](https://github.com/Lightning-AI/pytorch-lightning) - [Deep learning](/@harrisonqian/awesome/wiki/computer-science/deep-learning) framework to train, deploy, and ship AI products Lightning fast.
- [pytorch](https://github.com/pytorch/pytorch) - Tensors and Dynamic neural networks in Python with strong GPU acceleration.
- [stable-baselines3](https://github.com/DLR-RM/stable-baselines3) - PyTorch implementations of Stable Baselines (deep) reinforcement [learning](/@harrisonqian/awesome/wiki/programming-languages/learning) [algorithms](/@harrisonqian/awesome/wiki/theory/algorithms).
- [tensorflow](https://github.com/tensorflow/tensorflow) - The most popular [Deep Learning](/@harrisonqian/awesome/wiki/computer-science/deep-learning) framework created by Google.

## Machine Learning

_Libraries for Machine Learning. Also see [awesome-machine-learning](https://github.com/josephmisiti/awesome-machine-learning#python)._

- [catboost](https://github.com/catboost/catboost) - A fast, scalable, high performance gradient boosting on decision trees library.
- [feature_engine](https://github.com/feature-engine/feature_engine) - sklearn compatible API with the widest toolset for feature engineering and selection.
- [h2o](https://github.com/h2oai/h2o-3) - Open Source Fast Scalable [Machine Learning](/@harrisonqian/awesome/wiki/computer-science/machine-learning) Platform.
- [lightgbm](https://github.com/lightgbm-org/LightGBM) - A fast, distributed, high performance gradient boosting framework.
- [mindsdb](https://github.com/mindsdb/mindsdb) - MindsDB is an open source AI layer for existing databases that allows you to effortlessly develop, train and deploy state-of-the-art [machine learning](/@harrisonqian/awesome/wiki/computer-science/machine-learning) models using standard queries.
- [pgmpy](https://github.com/pgmpy/pgmpy) - A Python library for probabilistic graphical models and Bayesian networks.
- [scikit-learn](https://github.com/scikit-learn/scikit-learn) - The most popular Python library for [Machine Learning](/@harrisonqian/awesome/wiki/computer-science/machine-learning) with extensive documentation and community support.
- [spark.ml](https://github.com/apache/spark) - [Apache Spark](https://spark.apache.org/)'s scalable [Machine [Learning](/@harrisonqian/awesome/wiki/programming-languages/learning) library](https://spark.apache.org/docs/latest/ml-guide.html) for distributed computing.
- [TabGAN](https://github.com/Diyago/Tabular-data-generation) - Synthetic tabular data generation using GANs, Diffusion Models, and LLMs.
- [xgboost](https://github.com/dmlc/xgboost) - A scalable, portable, and distributed gradient boosting library.

## Natural Language Processing

_Libraries for working with human languages._

- General
  - [gensim](https://github.com/piskvorky/gensim) - Topic Modeling for Humans.
  - [nltk](https://github.com/nltk/nltk) - A leading platform for building Python programs to work with human language data.
  - [spacy](https://github.com/explosion/spaCy) - A library for industrial-strength natural language processing in Python and Cython.
  - [stanza](https://github.com/stanfordnlp/stanza) - The Stanford NLP Group's official Python library, supporting 60+ languages.
- Chinese
  - [funnlp](https://github.com/fighting41love/funNLP) - A collection of tools and [datasets](/@harrisonqian/awesome/wiki/miscellaneous/datasets) for Chinese NLP.

## Computer Vision

_Libraries for Computer Vision._

- [easyocr](https://github.com/JaidedAI/EasyOCR) - Ready-to-use OCR with 40+ languages supported.
- [kornia](https://github.com/kornia/kornia/) - Open Source Differentiable [Computer Vision](/@harrisonqian/awesome/wiki/computer-science/computer-vision) Library for PyTorch.
- [opencv](https://github.com/opencv/opencv-python) - Open Source [Computer Vision](/@harrisonqian/awesome/wiki/computer-science/computer-vision) Library.
- [pytesseract](https://github.com/madmaze/pytesseract) - A wrapper for [Google Tesseract OCR](https://github.com/tesseract-ocr).

## Recommender Systems

_Libraries for building recommender systems._

- [annoy](https://github.com/spotify/annoy) - Approximate Nearest Neighbors in C++/Python optimized for memory usage.
- [implicit](https://github.com/benfred/implicit) - A fast Python implementation of collaborative filtering for implicit [datasets](/@harrisonqian/awesome/wiki/miscellaneous/datasets).
- [scikit-surprise](https://github.com/NicolasHug/Surprise) - A scikit for building and analyzing recommender systems.

**Web Development**

## Web Frameworks

_Traditional full stack web frameworks. Also see [Web APIs](#web-apis)._

- Synchronous
  - [bottle](https://github.com/bottlepy/bottle) - A fast and simple micro-framework distributed as a single file with no dependencies.
  - [django](https://github.com/django/django) - The most popular web framework in Python.
    - [awesome-django](https://github.com/shahraizali/awesome-django)
  - [flask](https://github.com/pallets/flask) - A microframework for Python.
    - [awesome-flask](https://github.com/humiaozuzu/awesome-flask)
  - [pyramid](https://github.com/Pylons/pyramid) - A small, fast, down-to-[earth](/@harrisonqian/awesome/wiki/miscellaneous/earth), open source Python web framework.
    - [awesome-pyramid](https://github.com/uralbash/awesome-pyramid)
  - [fasthtml](https://github.com/AnswerDotAI/fasthtml) - The fastest way to create an HTML app.
    - [awesome-fasthtml](https://github.com/amosgyamfi/awesome-fasthtml)
  - [masonite](https://github.com/MasoniteFramework/masonite) - The modern and developer centric Python web framework.
- Asynchronous
  - [litestar](https://github.com/litestar-org/litestar) - Production-ready, capable and extensible ASGI Web framework.
  - [microdot](https://github.com/miguelgrinberg/microdot) - The impossibly small web framework for Python and [MicroPython](/@harrisonqian/awesome/wiki/programming-languages/micropython).
  - [reflex](https://github.com/reflex-dev/reflex) - A framework for building reactive, full-stack web applications entirely with Python.
  - [robyn](https://github.com/sparckles/Robyn) - A high-performance async Python web framework with a [Rust](/@harrisonqian/awesome/wiki/programming-languages/rust) runtime.
  - [starlette](https://github.com/Kludex/starlette) - A lightweight ASGI framework and toolkit for building high-performance async services.
  - [tornado](https://github.com/tornadoweb/tornado) - A web framework and asynchronous networking library.

## Web APIs

_Libraries for building RESTful and GraphQL APIs._

- Django
  - [django-ninja](https://github.com/vitalik/django-ninja) - Fast, Django [REST](/@harrisonqian/awesome/wiki/miscellaneous/rest) framework based on type hints and Pydantic.
  - [django-[rest](/@harrisonqian/awesome/wiki/miscellaneous/rest)-framework](https://github.com/encode/django-rest-framework) - A powerful and flexible toolkit to build web APIs.
  - [strawberry-django](https://github.com/strawberry-graphql/strawberry-django) - Strawberry [GraphQL](/@harrisonqian/awesome/wiki/miscellaneous/graphql) [integration](/@harrisonqian/awesome/wiki/platforms/integration) with Django.
- [Flask](/@harrisonqian/awesome/wiki/back-end-development/flask)
  - [apiflask](https://github.com/apiflask/apiflask) - A lightweight Python web API framework based on [Flask](/@harrisonqian/awesome/wiki/back-end-development/flask) and Marshmallow.
- Framework Agnostic
  - [connexion](https://github.com/spec-first/connexion) - A spec-first framework that automatically handles requests based on your OpenAPI specification.
  - [falcon](https://github.com/falconry/falcon) - A high-performance framework for building cloud APIs and web app backends.
  - [fastapi](https://github.com/fastapi/fastapi) - A modern, fast, web framework for building APIs with standard Python type hints.
  - [sanic](https://github.com/sanic-org/sanic) - A Python 3.6+ web server and web framework that's written to go fast.
  - [strawberry](https://github.com/strawberry-graphql/strawberry) - A [GraphQL](/@harrisonqian/awesome/wiki/miscellaneous/graphql) library that leverages Python type annotations for schema definition.
  - [webargs](https://github.com/marshmallow-code/webargs) - A friendly library for parsing HTTP request arguments with built-in support for popular web [frameworks](/@harrisonqian/awesome/wiki/front-end-development/frameworks).

## Web Servers

_ASGI and WSGI compatible web servers._

- ASGI
  - [daphne](https://github.com/django/daphne) - An HTTP, HTTP/2 and WebSocket protocol server for ASGI and ASGI-HTTP.
  - [granian](https://github.com/emmett-framework/granian) - A [Rust](/@harrisonqian/awesome/wiki/programming-languages/rust) HTTP server for Python applications built on top of [Hyper](/@harrisonqian/awesome/wiki/development-environment/hyper) and Tokio, supporting WSGI/ASGI/RSGI.
  - [hypercorn](https://github.com/pgjones/hypercorn) - An ASGI and WSGI Server based on [Hyper](/@harrisonqian/awesome/wiki/development-environment/hyper) libraries and inspired by Gunicorn.
  - [uvicorn](https://github.com/Kludex/uvicorn) - A lightning-fast ASGI server implementation, using uvloop and httptools.
- WSGI
  - [gunicorn](https://github.com/benoitc/gunicorn) - Pre-forked, ported from [Ruby](/@harrisonqian/awesome/wiki/programming-languages/ruby)'s Unicorn project.
  - [uwsgi](https://github.com/unbit/uwsgi) - A project aims at developing a full stack for building hosting services, written in C.
  - [waitress](https://github.com/Pylons/waitress) - Multi-threaded, powers [Pyramid](/@harrisonqian/awesome/wiki/back-end-development/pyramid).
- RPC
  - [grpcio](https://github.com/grpc/grpc) - HTTP/2-based RPC framework with Python bindings, built by Google.
  - [rpyc](https://github.com/tomerfiliba-org/rpyc) (Remote Python Call) - A transparent and symmetric RPC library for Python.

## WebSocket

_Libraries for working with WebSocket._

- [autobahn-python](https://github.com/crossbario/autobahn-python) - WebSocket & WAMP for Python on Twisted and [asyncio](https://docs.python.org/3/library/asyncio.html).
- [channels](https://github.com/django/channels) - Developer-friendly asynchrony for Django.
- [flask-socketio](https://github.com/miguelgrinberg/Flask-SocketIO) - Socket.IO [integration](/@harrisonqian/awesome/wiki/platforms/integration) for [Flask](/@harrisonqian/awesome/wiki/back-end-development/flask) applications.
- [picows](https://github.com/tarasko/picows) - Fastest WebSocket clients and servers with a frame level interface for the most demanding use-cases.
- [websockets](https://github.com/python-websockets/websockets) - A library for building WebSocket servers and clients with a focus on correctness and simplicity.

## Template Engines

_Libraries and tools for templating and lexing._

- [jinja](https://github.com/pallets/jinja) - A modern and designer friendly templating language.
- [mako](https://github.com/sqlalchemy/mako) - Hyperfast and lightweight templating for the Python platform.

## Web Asset Management

_Tools for managing, compressing and minifying website assets._

- [django-compressor](https://github.com/django-compressor/django-compressor) - Compresses linked and inline [JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) or CSS into a single cached file.
- [django-storages](https://github.com/jschneier/django-storages) - A collection of custom storage back ends for Django.

## Authentication

_Libraries for implementing authentication schemes._

- OAuth
  - [authlib](https://github.com/authlib/authlib) - [JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) Object Signing and Encryption draft implementation.
  - [django-allauth](https://github.com/pennersr/django-allauth) - Authentication app for Django that "just works."
  - [django-oauth-toolkit](https://github.com/django-oauth/django-oauth-toolkit) - OAuth 2 goodies for Django.
  - [oauthlib](https://github.com/oauthlib/oauthlib) - A generic and thorough implementation of the OAuth request-signing logic.
- JWT
  - [pyjwt](https://github.com/jpadilla/pyjwt) - [JSON](/@harrisonqian/awesome/wiki/miscellaneous/json) Web Token implementation in Python.
- Permissions
  - [django-guardian](https://github.com/django-guardian/django-guardian) - Implementation of per object permissions for Django 1.2+
  - [django-rules](https://github.com/dfunckt/django-rules) - A tiny but powerful app providing object-level permissions to Django, without requiring a [database](/@harrisonqian/awesome/wiki/databases/database).

## Admin Panels

_Libraries for administrative interfaces._

- [ajenti](https://github.com/ajenti/ajenti) - The admin panel your servers deserve.
- [django-grappelli](https://github.com/sehmaschine/django-grappelli) - A jazzy skin for the Django Admin-Interface.
- [django-unfold](https://github.com/unfoldadmin/django-unfold) - Elevate your Django admin with a stunning modern interface, powerful features, and seamless user experience.
- [flask-admin](https://github.com/pallets-eco/flask-admin) - Simple and extensible administrative interface framework for [Flask](/@harrisonqian/awesome/wiki/back-end-development/flask).
- [flower](https://github.com/mher/flower) - Real-time monitor and web admin for Celery.
- [func-to-web](https://github.com/offerrall/FuncToWeb) - Instantly create web UIs from Python functions using type hints. Zero frontend code required.
- [jet-bridge](https://github.com/jet-admin/jet-bridge) - Admin panel framework for any application with nice UI (ex Jet Django).

## CMS

_Content Management Systems._

- [django-cms](https://github.com/django-cms/django-cms) - The easy-to-use and developer-friendly enterprise CMS powered by Django.
- [indico](https://github.com/indico/indico) - A feature-rich event management system, made @ [CERN](https://en.wikipedia.org/wiki/CERN).
- [wagtail](https://github.com/wagtail/wagtail) - A Django content management system.

## Static Site Generators

_Static site generator is a software that takes some text + templates as input and produces HTML files on the output._

- [lektor](https://github.com/lektor/lektor) - An easy to use static CMS and blog engine.
- [nikola](https://github.com/getnikola/nikola) - A static website and blog generator.
- [pelican](https://github.com/getpelican/pelican) - Static site generator that supports [Markdown](/@harrisonqian/awesome/wiki/miscellaneous/markdown) and [reST](/@harrisonqian/awesome/wiki/miscellaneous/rest) syntax.

**HTTP & Scraping**

## HTTP Clients

_Libraries for working with HTTP._

- [aiohttp](https://github.com/aio-libs/aiohttp) - Asynchronous HTTP client/server framework for [asyncio](/@harrisonqian/awesome/wiki/programming-languages/asyncio) and Python.
- [furl](https://github.com/gruns/furl) - A small Python library that makes parsing and manipulating URLs easy.
- [httpx](https://github.com/encode/httpx) - A next generation HTTP client for Python.
- [requests](https://github.com/psf/requests) - HTTP Requests for Humans.
- [urllib3](https://github.com/urllib3/urllib3) - A HTTP library with thread-safe connection pooling, file post support, sanity friendly.

## Web Scraping

_Libraries to automate web scraping and extract web content._

- [Frameworks](/@harrisonqian/awesome/wiki/front-end-development/frameworks)
  - [browser-use](https://github.com/browser-use/browser-use) - Make websites accessible for AI agents with easy browser automation.
  - [crawl4ai](https://github.com/unclecode/crawl4ai) - An open-source, LLM-friendly web crawler that provides lightning-fast, structured data extraction specifically designed for AI agents.
  - [mechanicalsoup](https://github.com/MechanicalSoup/MechanicalSoup) - A Python library for automating interaction with websites.
  - [scrapy](https://github.com/scrapy/scrapy) - A fast high-level screen scraping and web crawling framework.
- Content Extraction
  - [feedparser](https://github.com/kurtmckee/feedparser) - Universal feed parser.
  - [html2text](https://github.com/Alir3z4/html2text) - Convert HTML to [Markdown](/@harrisonqian/awesome/wiki/miscellaneous/markdown)-formatted text.
  - [micawber](https://github.com/coleifer/micawber) - A small library for extracting rich content from URLs.
  - [sumy](https://github.com/miso-belica/sumy) - A module for automatic summarization of text documents and HTML pages.
  - [trafilatura](https://github.com/adbar/trafilatura) - A tool for gathering text and metadata from the web, with built-in content filtering.

## Email

_Libraries for sending and parsing email, and mail server management._

- [modoboa](https://github.com/modoboa/modoboa) - A mail hosting and management platform including a modern Web UI.
- [yagmail](https://github.com/kootenpv/yagmail) - Yet another Gmail/SMTP client.

**Database & Storage**

## ORM

_Libraries that implement Object-Relational Mapping or data mapping techniques._

- Relational Databases
  - [django.db.models](https://github.com/django/django) - The Django [ORM](https://docs.djangoproject.com/en/dev/topics/db/models/).
  - [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) - The Python SQL Toolkit and Object Relational Mapper.
    - [awesome-sqlalchemy](https://github.com/dahlia/awesome-sqlalchemy)
  - [dataset](https://github.com/pudo/dataset) - Store Python dicts in a [database](/@harrisonqian/awesome/wiki/databases/database) - works with SQLite, [MySQL](/@harrisonqian/awesome/wiki/databases/mysql), and [PostgreSQL](/@harrisonqian/awesome/wiki/databases/postgresql).
  - [peewee](https://github.com/coleifer/peewee) - A small, expressive ORM.
  - [pony](https://github.com/ponyorm/pony/) - ORM that provides a generator-oriented interface to SQL.
  - [sqlmodel](https://github.com/fastapi/sqlmodel) - SQLModel is based on Python type annotations, and powered by Pydantic and [SQLAlchemy](/@harrisonqian/awesome/wiki/databases/sqlalchemy).
  - [tortoise-orm](https://github.com/tortoise/tortoise-orm) - An easy-to-use [asyncio](/@harrisonqian/awesome/wiki/programming-languages/asyncio) ORM inspired by Django, with relations support.
- NoSQL Databases
  - [beanie](https://github.com/BeanieODM/beanie) - An asynchronous Python object-document mapper (ODM) for [MongoDB](/@harrisonqian/awesome/wiki/databases/mongodb).
  - [mongoengine](https://github.com/MongoEngine/mongoengine) - A Python Object-Document-Mapper for working with [MongoDB](/@harrisonqian/awesome/wiki/databases/mongodb).
  - [pynamodb](https://github.com/pynamodb/PynamoDB) - A Pythonic interface for [Amazon DynamoDB](https://aws.amazon.com/dynamodb/).

## Database Drivers

_Libraries for connecting and operating databases._

- [MySQL](/@harrisonqian/awesome/wiki/databases/mysql) - [awesome-mysql](https://github.com/shlomi-noach/awesome-mysql)
  - [mysqlclient](https://github.com/PyMySQL/mysqlclient) - [MySQL](/@harrisonqian/awesome/wiki/databases/mysql) connector with Python 3 support ([mysql-python](https://sourceforge.net/projects/mysql-python/) fork).
  - [pymysql](https://github.com/PyMySQL/PyMySQL) - A pure Python [MySQL](/@harrisonqian/awesome/wiki/databases/mysql) driver compatible to [mysql](/@harrisonqian/awesome/wiki/databases/mysql)-python.
- [PostgreSQL](/@harrisonqian/awesome/wiki/databases/postgresql) - [awesome-postgres](https://github.com/dhamaniasad/awesome-postgres)
  - [psycopg](https://github.com/psycopg/psycopg) - The most popular [PostgreSQL](/@harrisonqian/awesome/wiki/databases/postgresql) adapter for Python.
- SQLite - [awesome-sqlite](https://github.com/planetopendata/awesome-sqlite)
  - [sqlite-utils](https://github.com/simonw/sqlite-utils) - Python CLI utility and library for manipulating SQLite databases.
  - [sqlite3](https://docs.python.org/3/library/sqlite3.html) - (Python standard library) SQLite interface compliant with DB-API 2.0.
- Other Relational Databases
  - [clickhouse-driver](https://github.com/mymarilyn/clickhouse-driver) - Python driver with native interface for ClickHouse.
  - [mssql-python](https://github.com/microsoft/mssql-python) - Official Microsoft driver for SQL Server and Azure SQL, built on ODBC for high performance and low memory usage.
- NoSQL Databases
  - [cassandra-driver](https://github.com/apache/cassandra-python-driver) - The Python Driver for Apache [Cassandra](/@harrisonqian/awesome/wiki/databases/cassandra).
  - [django-[mongodb](/@harrisonqian/awesome/wiki/databases/mongodb)-backend](https://github.com/mongodb/django-mongodb-backend) - Official [MongoDB](/@harrisonqian/awesome/wiki/databases/mongodb) [database](/@harrisonqian/awesome/wiki/databases/database) backend for Django.
  - [pymongo](https://github.com/mongodb/mongo-python-driver) - The official Python client for [MongoDB](/@harrisonqian/awesome/wiki/databases/mongodb).
  - [redis-py](https://github.com/redis/redis-py) - The Python client for Redis.

## Database

_Databases implemented in Python._

- [chromadb](https://github.com/chroma-core/chroma) - An open-source embedding [database](/@harrisonqian/awesome/wiki/databases/database) for building AI applications with embeddings and semantic search.
- [duckdb](https://github.com/duckdb/duckdb) - An in-process SQL OLAP [database](/@harrisonqian/awesome/wiki/databases/database) management system; optimized for [analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics) and fast queries, similar to SQLite but for analytical workloads.
- [pickledb](https://github.com/patx/pickledb) - A simple and lightweight key-value store for Python.
- [tinydb](https://github.com/msiemens/tinydb) - A tiny, document-oriented [database](/@harrisonqian/awesome/wiki/databases/database).
- [ZODB](https://github.com/zopefoundation/ZODB) - A native object [database](/@harrisonqian/awesome/wiki/databases/database) for Python. A key-value and object graph [database](/@harrisonqian/awesome/wiki/databases/database).

## Caching

_Libraries for caching data._

- [cachetools](https://github.com/tkem/cachetools) - Extensible memoizing collections and decorators.
- [django-cacheops](https://github.com/Suor/django-cacheops) - A slick ORM cache with automatic granular event-driven invalidation.
- [dogpile.cache](https://github.com/sqlalchemy/dogpile.cache) - dogpile.cache is a next generation replacement for Beaker made by the same authors.
- [python-diskcache](https://github.com/grantjenks/python-diskcache) - SQLite and file backed cache backend with faster lookups than memcached and redis.

## Search

_Libraries and software for indexing and performing search queries on data._

- [django-haystack](https://github.com/django-haystack/django-haystack) - Modular search for Django.
- [elasticsearch-py](https://github.com/elastic/elasticsearch-py) - The official low-level Python client for [Elasticsearch](https://www.elastic.co/products/elasticsearch).
- [pysolr](https://github.com/django-haystack/pysolr) - A lightweight Python wrapper for [Apache Solr](https://lucene.apache.org/solr/).

## Serialization

_Libraries for serializing complex data types._

- [marshmallow](https://github.com/marshmallow-code/marshmallow) - A lightweight library for converting complex objects to and from simple Python datatypes.
- [msgpack](https://github.com/msgpack/msgpack-python) - MessagePack serializer implementation for Python.
- [orjson](https://github.com/ijl/orjson) - Fast, correct [JSON](/@harrisonqian/awesome/wiki/miscellaneous/json) library.

**Data & Science**

## Data Analysis

_Libraries for data analysis._

- General
  - [aws-sdk-pandas](https://github.com/aws/aws-sdk-pandas) - Pandas on AWS.
  - [datasette](https://github.com/simonw/datasette) - An open source multi-tool for exploring and publishing data.
  - [desbordante](https://github.com/desbordante/desbordante-core/) - An open source data profiler for complex pattern discovery.
  - [ibis](https://github.com/ibis-project/ibis) - A portable Python dataframe library with a single API for 20+ backends.
  - [modin](https://github.com/modin-project/modin) - A drop-in pandas replacement that scales workflows by changing a single line of code.
  - [pandas](https://github.com/pandas-dev/pandas) - A library providing high-performance, easy-to-use data structures and data analysis tools.
  - [pathway](https://github.com/pathwaycom/pathway) - Real-time data processing framework for Python with reactive dataflows.
  - [polars](https://github.com/pola-rs/polars) - A fast DataFrame library implemented in [Rust](/@harrisonqian/awesome/wiki/programming-languages/rust) with a Python API.
- Financial Data
  - [akshare](https://github.com/akfamily/akshare) - A financial data interface library, built for human beings!
  - [edgartools](https://github.com/dgunning/edgartools) - Library for downloading structured data from SEC EDGAR filings and XBRL financial statements.
  - [lumibot](https://github.com/Lumiwealth/lumibot) - Algorithmic trading framework for backtesting and live deployment across stocks, options, crypto, futures, and forex.
  - [openbb](https://github.com/OpenBB-finance/OpenBB) - A financial data platform for analysts, quants and AI agents.
  - [yfinance](https://github.com/ranaroussi/yfinance) - Easy Pythonic way to download market and financial data from Yahoo Finance.

## Data Validation

_Libraries for validating data. Used for forms in many cases._

- [cerberus](https://github.com/pyeve/cerberus) - A lightweight and extensible data validation library.
- [jsonschema](https://github.com/python-jsonschema/jsonschema) - An implementation of [JSON Schema](http://json-schema.org/) for Python.
- [pandera](https://github.com/unionai-oss/pandera) - A data validation library for dataframes, with support for pandas, polars, and Spark.
- [pydantic](https://github.com/pydantic/pydantic) - Data validation using Python type hints.
- [voluptuous](https://github.com/alecthomas/voluptuous) - A Python data validation library primarily intended for validating data from untrusted sources.

## Data Visualization

_Libraries for visualizing data. Also see [awesome-javascript](https://github.com/sorrycc/awesome-javascript#data-visualization)._

- Plotting
  - [altair](https://github.com/vega/altair) - Declarative statistical visualization library for Python.
  - [bokeh](https://github.com/bokeh/bokeh) - Interactive Web Plotting for Python.
  - [bqplot](https://github.com/bqplot/bqplot) - Interactive Plotting Library for the [Jupyter](/@harrisonqian/awesome/wiki/miscellaneous/jupyter) Notebook.
  - [matplotlib](https://github.com/matplotlib/matplotlib) - A Python 2D plotting library.
  - [plotly](https://github.com/plotly/plotly.py) - Interactive graphing library for Python.
  - [plotnine](https://github.com/has2k1/plotnine) - A grammar of graphics for Python based on ggplot2.
  - [pygal](https://github.com/Kozea/pygal) - A Python SVG Charts Creator.
  - [pyqtgraph](https://github.com/pyqtgraph/pyqtgraph) - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.
  - [seaborn](https://github.com/mwaskom/seaborn) - Statistical [data visualization](/@harrisonqian/awesome/wiki/miscellaneous/data-visualization) using Matplotlib.
  - [ultraplot](https://github.com/ultraplot/UltraPlot) - Matplotlib wrapper for publication-ready scientific figures with minimal code. Includes advanced subplot management, panel layouts, and batteries-included geoscience plotting.
  - [vispy](https://github.com/vispy/vispy) - High-performance scientific visualization based on [OpenGL](/@harrisonqian/awesome/wiki/miscellaneous/opengl).
- Specialized
  - [cartopy](https://github.com/SciTools/cartopy) - A cartographic python library with matplotlib support.
  - [pygraphviz](https://github.com/pygraphviz/pygraphviz/) - Python interface to [Graphviz](http://www.graphviz.org/).
- Dashboards and [Apps](/@harrisonqian/awesome/wiki/platforms/apps)
  - [gradio](https://github.com/gradio-app/gradio) - Build and share [machine learning](/@harrisonqian/awesome/wiki/computer-science/machine-learning) [apps](/@harrisonqian/awesome/wiki/platforms/apps), all in Python.
  - [streamlit](https://github.com/streamlit/streamlit) - A framework which lets you build dashboards, generate reports, or create chat [apps](/@harrisonqian/awesome/wiki/platforms/apps) in minutes.


---
*truncated — [full list on GitHub](https://github.com/vinta/awesome-python)*
