awesome-python
A curated list of awesome Python frameworks, libraries and software.
https://github.com/uhub/awesome-python
Last synced: about 21 hours ago
JSON representation
-
Concurrency and Performance
-
Concurrency and Parallelism
- ray-project/ray - Ray is an AI compute engine. Ray consists of a core distributed runtime and a set of AI Libraries for accelerating ML workloads.
- dask/dask - Parallel computing with task scheduling
- python-trio/trio - Trio – a friendly Python library for async concurrency and I/O
- gevent/gevent - Coroutine-based concurrency library for Python
- ReactiveX/RxPY - ReactiveX for Python
- joblib/joblib - Computing with Python functions.
- nalepae/pandarallel - A simple and efficient tool to parallelize Pandas operations on all available CPUs
-
-
Data and Storage
-
Caching and Queues
- celery/celery - Distributed Task Queue (development branch)
- rq/rq - Simple job queues for Python
- hatchet-dev/hatchet - 🪓 An orchestration engine for background tasks, AI agents, and durable workflows
- robinhood/faust - Python Stream Processing
- coleifer/huey - a little task queue for python
- dpkp/kafka-python - Python client for Apache Kafka
- ag2ai/faststream - Asynchronous Python framework for event-driven services. A thin client for Kafka, RabbitMQ, NATS, Redis and MQTT with full access to native broker features, plus AsyncAPI docs, in-memory tests and observability out of the box.
- Bogdanp/dramatiq - A fast and reliable background task processing library for Python 3.
- tschellenbach/Stream-Framework - Stream Framework is a Python library, which allows you to build news feed, activity streams and notification systems using Cassandra and/or Redis. The authors of Stream-Framework also provide a cloud service for feed technology:
- pika/pika - Pure Python RabbitMQ/AMQP 0-9-1 client library
- confluentinc/confluent-kafka-python - Confluent's Kafka Python Client
-
Database Clients and ORMs
- fastapi/sqlmodel - SQL databases in Python, designed for simplicity, compatibility, and robustness.
- redis/redis-py - Redis Python client
- dbcli/pgcli - Postgres CLI with autocompletion and syntax highlighting
- sqlalchemy/sqlalchemy - The Database Toolkit for Python
- coleifer/peewee - a small, expressive orm -- supports postgresql, mysql, sqlite, now with asyncio
- dbcli/mycli - Rich MySQL Terminal Client with AutoCompletion, Syntax Highlighting, and Dataframes
- tobymao/sqlglot - Python SQL Parser and Transpiler
- MagicStack/asyncpg - A fast PostgreSQL Database Client Library for Python/asyncio.
- PyMySQL/PyMySQL - MySQL client library for Python
- kennethreitz/records - SQL for Humans™
- tortoise/tortoise-orm - Familiar asyncio ORM for python, built with relations in mind
- pudo/dataset - Easy-to-use data handling for SQL data stores with support for implicit table creation, bulk loading, and transactions.
- elastic/elasticsearch-py - Official Python client for Elasticsearch
- mongodb/mongo-python-driver - PyMongo - the Official MongoDB Python driver
- MongoEngine/mongoengine - A Python Object-Document-Mapper for working with MongoDB
- pallets-eco/flask-sqlalchemy - Adds SQLAlchemy support to Flask
- encode/databases - Async database support for Python. 🗄 *(archived)*
- elastic/elasticsearch-dsl-py - High level Python client for Elasticsearch *(archived)*
- python-gino/gino - GINO Is Not ORM - a Python asyncio ORM on SQLAlchemy core.
-
Serialization and Formats
- pydantic/pydantic - Data validation using Python type hints
- ijl/orjson - Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy
- marshmallow-code/marshmallow - A lightweight library for converting complex objects to and from simple Python datatypes.
- martinblech/xmltodict - Python module that makes working with XML feel like you are working with JSON
- python-openxml/python-docx - Create and modify Word documents with Python
- euske/pdfminer - Python PDF Parser (Not actively maintained). Check out pdfminer.six. *(archived)*
- mangiucugna/json_repair - Repair malformed JSON from LLMs, APIs, logs, and user input in Python.
- python-jsonschema/jsonschema - An implementation of the JSON Schema specification for Python
- jazzband/tablib - Python Module for Tabular Datasets in XLS, CSV, JSON, YAML, &c.
- jmcnamara/XlsxWriter - A Python module for creating Excel XLSX files.
- pyeve/cerberus - Lightweight, extensible data validation library for Python
- lxml/lxml - The lxml XML toolkit for Python
-
-
Graphics and Media
-
Game Development
- kitao/pyxel - A retro game engine for Python
- SFTtech/openage - Clone of the Age of Empires II engine 🚀
- fogleman/Minecraft - Simple Minecraft-inspired program using Python and Pyglet
- CharlesPikachu/Games - Games: Create interesting games in pure python.
- Baekalfen/PyBoy - Game Boy emulator written in Python
- thomasahle/sunfish - Sunfish: a Python Chess Engine in 111 lines of code
- lxgr-linux/pokete - A terminal based Pokemon like game
-
Graphics and Rendering
- 3b1b/manim - Animation engine for explanatory math videos
- ManimCommunity/manim - A community-maintained Python framework for creating mathematical animations.
- marceloprates/prettymaps - Draw pretty maps from OpenStreetMap data! Built with osmnx +matplotlib + shapely
- originalankur/maptoposter - Transform your favorite cities into beautiful, minimalist designs. MapToPoster lets you create and export visually striking map posters with code.
- domlysz/BlenderGIS - Blender addons to make the bridge between Blender and geographic data
- a1studmuffin/SpaceshipGenerator - A Blender script to procedurally generate 3D spaceships
- fonttools/fonttools - A library to manipulate font files from Python.
- pyvista/pyvista - 3D visualization and mesh analysis for science and engineering
- mikedh/trimesh - Python library for loading and using triangular meshes.
- vispy/vispy - Main repository for Vispy
- JacquesLucke/animation_nodes - Node based visual scripting system designed for motion graphics in Blender.
-
Image and Video
- danielgatis/rembg - Rembg is a tool to remove images background
- k4yt3x/video2x - A machine learning-based video super resolution and frame interpolation framework. Est. Hack the Valley II, 2018.
- alievk/avatarify-python - Avatars for Zoom, Skype and other video-conferencing apps.
- Zulko/moviepy - Video editing with Python
- python-pillow/Pillow - Python Imaging Library (fork)
- streamlink/streamlink - Streamlink is a CLI utility which pipes video streams from various services into a video player
- linyqh/NarratoAI - 利用 AI 大模型,一键解说并剪辑视频
- kkroening/ffmpeg-python - Python bindings for FFmpeg - with complex filtering support
- x-hw/amazing-qr - 💮 amazing QRCode generator (supporting animated gif) - amazing 二维码生成器(支持 gif 动态图片二维码)
- vietnh1009/ASCII-generator - ASCII generator (image to text, image to image, video to video)
- brycedrennan/imaginAIry - Pythonic AI generation of images and videos
- nadermx/backgroundremover - Background Remover lets you Remove Background from images and video using AI with a simple command line interface that is free and open source.
- RayVentura/ShortGPT - 🚀🎬 ShortGPT - Experimental AI framework for youtube shorts / tiktok channel automation
- scikit-image/scikit-image - Image processing in Python
- nuno-faria/tiler - 👷 Build images with images
- wiltodelta/remove-ai-watermarks - Remove visible and invisible AI watermarks and provenance metadata from images and video. Python library and CLI for SynthID, C2PA, EXIF, IPTC, XMP, and common generative-AI marks.
- Breakthrough/PySceneDetect - :movie_camera: Python and OpenCV-based scene cut/transition detection program & library.
- lincolnloop/python-qrcode - Python QR Code image generator
- PyImageSearch/imutils - A series of convenience functions to make basic image processing operations such as translation, rotation, resizing, skeletonization, and displaying Matplotlib images easier with OpenCV and Python.
- abhiTronix/vidgear - A High-performance cross-platform Video Processing Python framework powerpacked with unique trailblazing features :fire:
- ShieldMnt/invisible-watermark - python library for invisible image watermark (blind image watermark)
-
-
Language and Tooling
-
Build Systems
- cookiecutter/cookiecutter - A cross-platform command-line utility that creates projects from cookiecutters (project templates), e.g. Python package projects, C projects.
- cookiecutter/cookiecutter-django - Cookiecutter Django is a framework for jumpstarting production-ready Django projects quickly.
- pyinstaller/pyinstaller - Freeze (package) Python programs into stand-alone executables
- pyinvoke/invoke - Pythonic task management & command execution.
- pex-tool/pex - A tool for generating .pex (Python EXecutable) files, lock files and venvs.
- mherrmann/fbs - Create Python GUIs with Qt in minutes
- beeware/briefcase - Tools to support converting a Python project into a standalone native application.
- blade-build/blade-build - Blade is a powerful build system from Tencent, supports many mainstream programming languages, such as C/C++, java, scala, python, protobuf...
-
Compilers and Interpreters
- python/cpython - The Python programming language
- exaloop/codon - A high-performance, zero-overhead, extensible Python compiler with built-in NumPy support
- Nuitka/Nuitka - Nuitka is a Python compiler written in Python. It's fully compatible with Python 2.6, 2.7, 3.4-3.14. You feed it your Python app, it does a lot of clever things, and spits out an executable or extension module.
- pyodide/pyodide - Pyodide is a Python distribution for the browser and Node.js based on WebAssembly
- numba/numba - NumPy aware dynamic Python compiler using LLVM
- cython/cython - The most widely used Python to C compiler
- samshadwell/TrumpScript - Make Python great again *(archived)*
- brython-dev/brython - Brython (Browser Python) is an implementation of Python 3 running in the browser
- lark-parser/lark - Lark is a parsing toolkit for Python, built with a focus on ergonomics, performance and modularity.
- hylang/hy - A dialect of Lisp that's embedded in Python
- vyperlang/vyper - Pythonic Smart Contract Language for the EVM
- evhub/coconut - Simple, elegant, Pythonic functional programming.
- eliben/pycparser - :snake: Complete C99 parser in pure Python
- colesbury/nogil - Multithreaded Python without the GIL *(archived)*
- dabeaz/ply - Python Lex-Yacc *(archived)*
-
Debugging and Profiling
- cool-RR/PySnooper - Never use print for debugging again
- bloomberg/memray - Memray is a memory profiler for Python
- plasma-umass/scalene - Scalene: a high-performance, high-precision CPU, GPU, and memory profiler for Python with AI-powered optimization proposals
- cyrus-and/gdb-dashboard - Modular visual interface for GDB in Python
- gruns/icecream - 🍦 Never use print() to debug again.
- joerick/pyinstrument - 🚴 Call stack profiler for Python. Shows you why your code is slow!
- gaogaotiantian/viztracer - A debugging and profiling tool that can trace and visualize python code execution
- snare/voltron - A hacky debugger UI for hackers
- Qix-/better-exceptions - Pretty and useful exceptions in Python, automatically.
- pythonprofilers/memory_profiler - Monitor Memory usage of Python code
- nvdv/vprof - Visual profiler for Python
- rkern/line_profiler - (OLD REPO) Line-by-line profiling for Python - Current repo -> *(archived)*
- reloadware/reloadium - Hot Reloading and Profiling for Python
- what-studio/profiling - Was an interactive continuous Python profiler. *(archived)*
- laike9m/Cyberbrain - Python debugging, redefined.
- breuleux/jurigged - Hot reloading for Python
-
Editor and IDE Support
- spyder-ide/spyder - Official repository for Spyder - The Scientific Python Development Environment
- davidhalter/jedi - Awesome autocompletion, static analysis and refactoring library for python
- Shougo/deoplete.nvim - :stars: Dark powered asynchronous completion framework for neovim/Vim8
- thonny/thonny - Python IDE for beginners
- prompt-toolkit/pyvim - Pure Python Vim clone.
- DamnWidget/anaconda - Anaconda turns your Sublime Text 3 in a full featured Python development IDE including autocompletion, code linting, IDE features, autopep8 formating, McCabe complexity checker Vagrant and Docker support for Sublime Text 3 using Jedi, PyFlakes, pep8, MyPy, PyLint, pep257 and McCabe that will never freeze your Sublime Text 3
- Komodo/KomodoEdit - Komodo Edit is a fast and free multi-language code editor. Written in JS, Python, C++ and based on the Mozilla platform.
- wuub/SublimeREPL - SublimeREPL - run an interpreter inside ST2 (Clojure, CoffeeScript, F#, Groovy, Haskell, Lua, MozRepl, NodeJS, Python, R, Ruby, Scala, shell or configure one yourself)
- duydao/Text-Pastry - Extend the power of multiple selections in Sublime Text. Modify selections, insert numeric sequences, incremental numbers, generate uuids, date ranges, insert continuously from a word list and more.
-
Linters and Formatters
- psf/black - The uncompromising Python code formatter
- python/mypy - Optional static typing for Python
- astral-sh/ty - An extremely fast Python type checker and language server, written in Rust.
- microsoft/pyright - Static Type Checker for Python
- pre-commit/pre-commit - A framework for managing and maintaining multi-language pre-commit hooks.
- google/yapf - A formatter for Python files
- facebook/pyre-check - Performant type-checking for python. *(archived)*
- repowise-dev/repowise - Codebase intelligence for AI and humans: code health scores, auto-generated docs, git analytics, dead code detection, and architectural decisions via MCP.
- PyCQA/isort - A Python utility / library to sort imports.
- pre-commit/pre-commit-hooks - Some out-of-the-box hooks for pre-commit
- PyCQA/pycodestyle - Simple Python style checker in one Python file
- python/typeshed - Collection of library stubs for Python, with static types
- google/pytype - A static type analyzer for Python code *(archived)*
- Instagram/MonkeyType - A Python library that generates static type annotations by collecting runtime types
- jendrikseipp/vulture - Find dead Python code
- hhatto/autopep8 - A tool that automatically formats Python code to conform to the PEP 8 style guide.
- asottile/pyupgrade - A tool (and pre-commit hook) to automatically upgrade syntax for newer versions of the language.
- coala/coala - coala provides a unified command-line interface for linting and fixing all your code, regardless of the programming languages you use.
- beartype/beartype - Unbearably fast near-real-time pure-Python runtime-static type-checker.
-
Package Management
- python-poetry/poetry - Python packaging and dependency management made easy
- pypa/pipenv - Python Development Workflow for Humans.
- pypa/pipx - Install and Run Python Applications in Isolated Environments
- pypa/pip - The Python package installer
- pdm-project/pdm - A modern Python package and dependency manager supporting the latest PEP standards
- jazzband/pip-tools - A set of tools to keep your pinned Python dependencies fresh.
- hacs/integration - HACS gives you a powerful UI to handle downloads of all your custom needs.
- conda/conda - A system-level, binary package and environment manager running on all major operating systems and platforms.
- pypa/hatch - Modern, extensible Python project management
- spack/spack - A flexible package manager that supports multiple versions, configurations, platforms, and compilers.
- pypa/virtualenv - Virtual Python Environment builder
- astral-sh/python-build-standalone - Produce redistributable builds of Python
- fo40225/tensorflow-windows-wheel - Tensorflow prebuilt binary for Windows
- pypa/flit - Simplified packaging of Python modules
-
-
Learning and Reference
-
Awesome Lists and Collections
- vinta/awesome-python - The definitive list that answers "I want to do X in Python, which tool should I use?"
- practical-tutorials/project-based-learning - Curated list of project-based tutorials
- 521xueweihan/HelloGitHub - :octocat: 分享 GitHub 上有趣、入门级的开源项目。Share interesting, entry-level open source projects on GitHub.
- Shubhamsaboo/awesome-llm-apps - 100+ AI Agents, Agent Skills and RAG Apps - Free and Open Source.
- RunaCapital/awesome-oss-alternatives - Awesome list of open-source startup alternatives to well-known SaaS products 🚀
- EvanLi/Github-Ranking - :star:Github Ranking:star: Github stars and forks ranking list. Github Top100 stars list of different languages. Automatically update daily. | Github仓库排名,每日自动更新
- EwingYangs/awesome-open-gpt - Collection of Open Source Projects Related to GPT,GPT相关开源项目合集🚀、精选🔥🔥
- ujjwalkarn/DataSciencePython - common data analysis and machine learning tasks using python
- dahlia/awesome-sqlalchemy - A curated list of awesome tools for SQLAlchemy
-
Examples and Exercises
- TheAlgorithms/Python - All Algorithms implemented in Python
- bregman-arie/devops-exercises - Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions
- fastapi/full-stack-fastapi-template - Full-stack web application template with FastAPI, React, SQLModel, PostgreSQL, Vite, Tailwind CSS, shadcn/ui, FastAPI Cloud, and Docker Compose.
- faif/python-patterns - A collection of design patterns/idioms in Python
- geekcomputers/Python - My Python Examples
- donnemartin/interactive-coding-challenges - 120+ interactive Python coding interview challenges (algorithms and data structures). Includes Anki flashcards.
- AtsushiSakai/PythonRobotics - Python sample codes and textbook for robotics algorithms.
- donnemartin/data-science-ipython-notebooks - Data science Python notebooks: Deep learning (TensorFlow, Theano, Caffe, Keras), scikit-learn, Kaggle, big data (Spark, Hadoop MapReduce, HDFS), matplotlib, pandas, NumPy, SciPy, Python essentials, AWS, and various command lines.
- Ebazhanov/linkedin-skill-assessments-quizzes - Full reference of LinkedIn answers 2024 for skill assessments (aws-lambda, rest-api, javascript, react, git, html, jquery, mongodb, java, Go, python, machine-learning, power-point) linkedin excel test lösungen, linkedin machine learning test LinkedIn test questions and answers
- keon/algorithms - Minimal examples of data structures and algorithms in Python
- Jack-Cherish/python-spider - :rainbow:Python3网络爬虫实战:淘宝、京东、网易云、B站、12306、抖音、笔趣阁、漫画小说下载、音乐电影下载等
- Python-World/python-mini-projects - A collection of simple python mini projects to enhance your python skills *(archived)*
- ShangtongZhang/reinforcement-learning-an-introduction - Python Implementation of Reinforcement Learning: An Introduction
- shengqiangzhang/examples-of-web-crawlers - 一些非常有趣的python爬虫例子,对新手比较友好,主要爬取淘宝、天猫、微信、微信读书、豆瓣、QQ等网站。(Some interesting examples of python crawlers that are friendly to beginners. )
- rougier/numpy-100 - 100 numpy exercises (with solutions)
- rushter/MLAlgorithms - Minimal and clean examples of machine learning algorithms implementations
- injetlee/Python - Python脚本。模拟登录知乎, 爬虫,操作excel,微信公众号,远程开机
- Jack-Cherish/Machine-Learning - :zap:机器学习实战(Python3):kNN、决策树、贝叶斯、逻辑回归、SVM、线性回归、树回归
- lazyprogrammer/machine_learning_examples - A collection of machine learning examples and tutorials.
- Chalarangelo/30-seconds-of-python - Short Python code snippets for all your development needs *(archived)*
- miguelgrinberg/flasky - Companion code to my O'Reilly book "Flask Web Development", second edition.
- lawlite19/MachineLearning_Python - 机器学习算法python实现
-
Programming Languages
Categories
Sub Categories
Scientific Computing
704
Applications and End User Tools
132
LLM and Inference
107
Data Science and Analytics
78
Machine Learning Frameworks
65
Tutorials and Books
59
Security Tools
52
Examples and Exercises
48
Scraping and Crawling
43
Natural Language Processing
40
Automation and Scripting
35
Computer Vision
33
HTTP and Networking Clients
30
Cloud and Infrastructure
28
Web Frameworks
26
Command Line Tools
25
Image and Video
21
Text Processing
20
Linters and Formatters
19
Database Clients and ORMs
19
Networking
17
Debugging and Profiling
16
Testing
15
General Purpose Libraries
15
Compilers and Interpreters
15
Package Management
14
GUI Toolkits
13
Mathematics
13
Serialization and Formats
12
Graphics and Rendering
11
Caching and Queues
11
Monitoring and Observability
11
API and GraphQL
10
Authentication and Authorization
10
Files and Operating System
10
Reverse Engineering
10
Editor and IDE Support
9
Awesome Lists and Collections
9
Terminal and Console UI
9
Build Systems
8
Game Development
7
Concurrency and Parallelism
7
Date and Time
7
Keywords
python
934
machine-learning
167
ai
161
deep-learning
138
llm
134
pytorch
104
data-science
81
python3
78
openai
55
linux
54
artificial-intelligence
49
chatgpt
48
rag
46
tensorflow
44
security
44
ai-agents
43
cli
42
agent
40
agents
40
automation
40
nlp
39
django
38
pandas
36
javascript
35
computer-vision
35
natural-language-processing
34
docker
33
api
33
developer-tools
32
mcp
32
framework
30
claude-code
29
chatbot
29
open-source
29
windows
28
typescript
28
flask
28
gpt
25
terminal
25
claude
25
large-language-models
24
fastapi
24
asyncio
23
json
22
sql
22
mlops
22
data-visualization
22
object-detection
22
visualization
22
web
22