Skip to content

Commit eb86241

Browse files
committed
sync with upstream
2 parents 5909fa7 + 2350345 commit eb86241

5 files changed

Lines changed: 63 additions & 18 deletions

File tree

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# secrets
2+
.env*
3+
14
# macOS
25
.DS_Store
36

@@ -10,7 +13,7 @@ __pycache__/
1013
website/output/
1114
website/data/
1215

13-
# planning docs
16+
# docs
1417
docs/
1518

1619
# agents

AGENTS.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# AGENTS.md
2+
3+
## Repository Overview
4+
5+
An opinionated list of Python frameworks, libraries, tools, and resources. Published at [awesome-python.com](https://awesome-python.com/).
6+
7+
## Entry Guidelines
8+
9+
**Refer to [CONTRIBUTING.md](CONTRIBUTING.md)** for acceptance criteria, quality requirements, rejection rules, and entry format. Apply these rules whenever adding or removing an entry, whether reviewing a PR or committing directly.
10+
11+
## Structure
12+
13+
- **README.md**: Source of truth for catalog entries and README sponsor placements. Hierarchical categories with alphabetically ordered entries.
14+
- **CONTRIBUTING.md**: Submission guidelines and review criteria.
15+
- **SPONSORSHIP.md**: Sponsor tiers, placement rules, and the editorial-independence policy. `website/templates/sponsorship.html` separately defines which sponsorship content appears on the published website page.
16+
- **website/**: Static site generator that builds awesome-python.com from README.md.
17+
- `build.py`: Parses README.md and renders HTML via Jinja2 templates.
18+
- `fetch_github_stars.py`: Fetches star counts into `website/data/`.
19+
- `readme_parser.py`: Markdown-to-structured-data parser.
20+
- `templates/`, `static/`: Jinja2 templates and CSS/JS assets.
21+
- `tests/`: Pytest tests for the build pipeline.
22+
- **Makefile**: `make install`, `make build`, `make preview`, `make test`, `make lint`, `make format`, `make typecheck`, `make fetch_github_stars`.
23+
- **pyproject.toml**: Uses `uv` for dependency management. Python >=3.13.
24+
25+
## Key Rules
26+
27+
- Alphabetical ordering within categories is mandatory.
28+
- Quality over quantity. Only "awesome" projects.
29+
- One project per PR.
30+
- One entry per commit when adding or deleting entries. Format, wording, or categorization changes across multiple entries may be bundled in a single commit.
31+
- README.md is the source of truth for catalog entries and README sponsor placements; treat `SPONSORSHIP.md` and `website/templates/sponsorship.html` as separate sponsorship content surfaces.

README.md

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
# Awesome Python
1+
# [Awesome Python](https://awesome-python.com/)
22

33
An opinionated guide to the best Python frameworks, libraries, tools, and resources.
44

5-
## **Sponsors**
5+
**Visit the [website](https://awesome-python.com/) to search and filter projects more easily.**
66

7-
- **[pyr](https://pyrun.dev)**: Zero-config Python project manager. Bootstraps its own runtime, app-convention, and working imports - out the box.
7+
## **Sponsors**
88

99
> The **#10 most-starred repo on GitHub**. Put your product in front of Python developers. [Become a sponsor](SPONSORSHIP.md).
1010
@@ -134,12 +134,15 @@ _Libraries for building AI applications, LLM integrations, and autonomous agents
134134

135135
- Agent Skills
136136
- [django-ai-plugins](https://github.com/vintasoftware/django-ai-plugins) - Django backend agent skills for Django, DRF, Celery, and Django-specific code review.
137+
- [graphify](https://github.com/safishamsi/graphify) - Turn any folder of code, SQL schemas, R scripts, shell scripts, docs, papers, images, or videos into a queryable knowledge graph.
138+
- [nuwa-skill](https://github.com/alchaincyf/nuwa-skill/blob/main/README_EN.md) - Nuwa distills the thinking of anyone — let Musk, Naval, Munger, and Feynman work for you.
137139
- [sentry-skills](https://github.com/getsentry/skills) - Python-focused engineering skills for code review, debugging, and backend workflows.
138140
- [trailofbits-skills](https://github.com/trailofbits/skills) - Python-friendly security skills for auditing, testing, and safer backend development. Also [skills-curated](https://github.com/trailofbits/skills-curated).
139141
- Orchestration
140142
- [ag2](https://github.com/ag2ai/ag2) - An open-source AgentOS for multi-agent orchestration and building agentic AI systems.
141143
- [autogen](https://github.com/microsoft/autogen) - A programming framework for building agentic AI applications.
142144
- [bernstein](https://github.com/sipyourdrink-ltd/bernstein) - A deterministic Python orchestrator for CLI coding agents (Claude Code, Codex, Gemini CLI, and 40+ more) with parallel git worktrees and an HMAC-signed audit chain.
145+
- [bindu](https://github.com/getbindu/Bindu) - A framework that wraps any agent handler with DID-based cryptographic identity, A2A JSON-RPC over HTTP, OAuth2 auth, x402 (USDC) payments, and a built-in operator inbox.
143146
- [bub](https://github.com/bubbuild/bub) - A lightweight, hook-first Python framework for channel-native agents that live alongside people.
144147
- [crewai](https://github.com/crewAIInc/crewAI) - A framework for orchestrating role-playing autonomous AI agents for collaborative task solving.
145148
- [dspy](https://github.com/stanfordnlp/dspy) - A framework for programming, not prompting, language models.
@@ -163,6 +166,7 @@ _Libraries for building AI applications, LLM integrations, and autonomous agents
163166
- [vllm](https://github.com/vllm-project/vllm) - A high-throughput and memory-efficient inference and serving engine for LLMs.
164167
- Speech
165168
- [openai-whisper](https://github.com/openai/whisper) - A general-purpose automatic speech recognition model trained on 680k hours of multilingual and multitask supervised data.
169+
- [funasr](https://github.com/modelscope/FunASR) - Industrial-grade speech recognition toolkit with 170x realtime speed, 50+ languages, speaker diarization, and emotion detection.
166170
- [vibevoice](https://github.com/microsoft/VibeVoice) - A family of open-source voice AI models from Microsoft for text-to-speech and long-form speech recognition.
167171
- [voxcpm](https://github.com/OpenBMB/VoxCPM) - A tokenizer-free text-to-speech foundation model for multilingual speech generation and voice cloning.
168172

@@ -185,9 +189,10 @@ _Libraries for Machine Learning. Also see [awesome-machine-learning](https://git
185189
- [feature_engine](https://github.com/feature-engine/feature_engine) - sklearn compatible API with the widest toolset for feature engineering and selection.
186190
- [h2o](https://github.com/h2oai/h2o-3) - Open Source Fast Scalable Machine Learning Platform.
187191
- [lightgbm](https://github.com/lightgbm-org/LightGBM) - A fast, distributed, high performance gradient boosting framework.
188-
- [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 models using standard queries.
192+
- [mindsdb](https://github.com/mindsdb/minds-platform) - 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 models using standard queries.
189193
- [pgmpy](https://github.com/pgmpy/pgmpy) - A Python library for probabilistic graphical models and Bayesian networks.
190194
- [scikit-learn](https://github.com/scikit-learn/scikit-learn) - The most popular Python library for Machine Learning with extensive documentation and community support.
195+
- * [scikit-lego](https://github.com/koaning/scikit-lego) - A collection of lego bricks for scikit-learn pipelines.
191196
- [spark.ml](https://github.com/apache/spark) - [Apache Spark](https://spark.apache.org/)'s scalable [Machine Learning library](https://spark.apache.org/docs/latest/ml-guide.html) for distributed computing.
192197
- [TabGAN](https://github.com/Diyago/Tabular-data-generation) - Synthetic tabular data generation using GANs, Diffusion Models, and LLMs.
193198
- [timesfm](https://github.com/google-research/timesfm) - A pretrained foundation model from Google Research for time-series forecasting.
@@ -214,6 +219,7 @@ _Libraries for Computer Vision._
214219
- [kornia](https://github.com/kornia/kornia/) - Open Source Differentiable Computer Vision Library for PyTorch.
215220
- [opencv](https://github.com/opencv/opencv-python) - Open Source Computer Vision Library.
216221
- [pytesseract](https://github.com/madmaze/pytesseract) - A wrapper for [Google Tesseract OCR](https://github.com/tesseract-ocr).
222+
- [ultralytics](https://github.com/ultralytics/ultralytics) - Ultralytics YOLO for object detection, segmentation, pose estimation, and classification with state-of-the-art accuracy and speed.
217223

218224
### Recommender Systems
219225

@@ -432,6 +438,7 @@ _Libraries for connecting and operating databases._
432438

433439
_Databases implemented in Python._
434440

441+
- [chdb](https://github.com/chdb-io/chdb) - In-process OLAP SQL engine with the full ClickHouse dialect, zero-copy pandas/Arrow interop, and federation to remote ClickHouse clusters via `remoteSecure()`.
435442
- [chromadb](https://github.com/chroma-core/chroma) - An open-source embedding database for building AI applications with embeddings and semantic search.
436443
- [duckdb](https://github.com/duckdb/duckdb) - An in-process SQL OLAP database management system; optimized for analytics and fast queries, similar to SQLite but for analytical workloads.
437444
- [pickledb](https://github.com/patx/pickledb) - A simple and lightweight key-value store for Python.
@@ -471,15 +478,14 @@ _Libraries for data analysis._
471478

472479
- [aws-sdk-pandas](https://github.com/aws/aws-sdk-pandas) - Pandas on AWS.
473480
- [datasette](https://github.com/simonw/datasette) - An open source multi-tool for exploring and publishing data.
474-
- [data-profiling](https://github.com/Data-Centric-AI-Community/data-profiling) - Generate detailed data profiling reports for pandas DataFrames.
481+
- [data-profiling](https://github.com/Data-Centric-AI-Community/fg-data-profiling) - Generate detailed data profiling reports for pandas DataFrames.
475482
- [desbordante](https://github.com/desbordante/desbordante-core/) - An open source data profiler for complex pattern discovery.
476483
- [ibis](https://github.com/ibis-project/ibis) - A portable Python dataframe library with a single API for 20+ backends.
477484
- [modin](https://github.com/modin-project/modin) - A drop-in pandas replacement that scales workflows by changing a single line of code.
478485
- [pandas](https://github.com/pandas-dev/pandas) - A library providing high-performance, easy-to-use data structures and data analysis tools.
479486
- [pathway](https://github.com/pathwaycom/pathway) - Real-time data processing framework for Python with reactive dataflows.
480487
- [polars](https://github.com/pola-rs/polars) - A fast DataFrame library implemented in Rust with a Python API.
481488

482-
483489
### Data Ingestion / ETL
484490

485491
_Libraries for data extraction, transformation, and loading pipelines across multiple sources and destinations._
@@ -557,7 +563,7 @@ _Libraries for scientific computing. Also see [Python-for-Scientists](https://gi
557563
- [pydy](https://github.com/pydy/pydy) - Short for Python Dynamics, used to assist with workflow in the modeling of dynamic motion.
558564
- [PythonRobotics](https://github.com/AtsushiSakai/PythonRobotics) - This is a compilation of various robotics algorithms with visualizations.
559565
- Simulation and Modeling
560-
- [mesa](https://github.com/projectmesa/mesa) - An agent-based modeling framework for building, analyzing, and visualizing complex system simulations.
566+
- [mesa](https://github.com/mesa/mesa) - An agent-based modeling framework for building, analyzing, and visualizing complex system simulations.
561567
- [pathsim](https://github.com/pathsim/pathsim) - A block-based system modeling and simulation framework with a browser-based visual editor.
562568
- [pymc](https://github.com/pymc-devs/pymc) - Probabilistic programming and Bayesian modeling in Python.
563569
- [simpy](https://gitlab.com/team-simpy/simpy) - A process-based discrete-event simulation framework.
@@ -730,6 +736,7 @@ _Software and libraries for DevOps._
730736
- Other
731737
- [borg](https://github.com/borgbackup/borg) - A deduplicating archiver with compression and encryption.
732738
- [chaostoolkit](https://github.com/chaostoolkit/chaostoolkit) - A Chaos Engineering toolkit & Orchestration for Developers.
739+
- [kubesdk](https://github.com/puzl-cloud/kubesdk) - A modern async-first Kubernetes client and API model generator.
733740
- [pre-commit](https://github.com/pre-commit/pre-commit) - A framework for managing and maintaining multi-language pre-commit hooks.
734741

735742
### Distributed Computing
@@ -920,7 +927,7 @@ _Libraries for parsing and manipulating specific text formats._
920927
- [weasyprint](https://github.com/Kozea/WeasyPrint) - A visual rendering engine for HTML and CSS that can export to PDF.
921928
- Markdown
922929
- [markdown-it-py](https://github.com/executablebooks/markdown-it-py) - Markdown parser with 100% CommonMark support, extensions, and syntax plugins.
923-
- [markdown](https://github.com/waylan/Python-Markdown) - A Python implementation of John Gruber’s Markdown.
930+
- [markdown](https://github.com/Python-Markdown/markdown) - A Python implementation of John Gruber’s Markdown.
924931
- [markitdown](https://github.com/microsoft/markitdown) - Python tool for converting files and office documents to Markdown.
925932
- [mistune](https://github.com/lepture/mistune) - Fastest and full featured pure Python parsers of Markdown.
926933
- Data Formats
@@ -958,8 +965,9 @@ _Libraries for manipulating images._
958965
_Libraries for manipulating audio, video, and their metadata._
959966

960967
- Audio
961-
- [birdnet](https://github.com/kahst/BirdNET-Analyzer) - Deep learning framework for acoustic species detection; identifies bird species from audio recordings using TensorFlow.
968+
- [birdnet](https://github.com/birdnet-team/BirdNET-Analyzer) - Deep learning framework for acoustic species detection; identifies bird species from audio recordings using TensorFlow.
962969
- [gtts](https://github.com/pndurette/gTTS) - Python library and CLI tool for converting text to speech using Google Translate TTS.
970+
- [KittenTTS](https://github.com/KittenML/KittenTTS) - Lightweight ONNX text-to-speech library with small CPU-friendly models.
963971
- [librosa](https://github.com/librosa/librosa) - Python library for audio and music analysis.
964972
- [matchering](https://github.com/sergree/matchering) - A library for automated reference audio mastering.
965973
- [pydub](https://github.com/jiaaro/pydub) - Manipulate audio with a simple and easy high level interface.
@@ -969,7 +977,7 @@ _Libraries for manipulating audio, video, and their metadata._
969977
- Metadata
970978
- [beets](https://github.com/beetbox/beets) - A music library manager and [MusicBrainz](https://musicbrainz.org/) tagger.
971979
- [mutagen](https://github.com/quodlibet/mutagen) - A Python module to handle audio metadata.
972-
- [tinytag](https://github.com/devsnd/tinytag) - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
980+
- [tinytag](https://github.com/tinytag/tinytag) - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
973981

974982
### Game Development
975983

@@ -1002,6 +1010,7 @@ _Libraries for enhancing Python built-in classes._
10021010
- [attrs](https://github.com/python-attrs/attrs) - Replacement for `__init__`, `__eq__`, `__repr__`, etc. boilerplate in class definitions.
10031011
- [bidict](https://github.com/jab/bidict) - Efficient, Pythonic bidirectional map data structures and related functionality.
10041012
- [box](https://github.com/cdgriffith/Box) - Python dictionaries with advanced dot notation access.
1013+
- [uuid-utils](https://github.com/aminalaee/uuid-utils) - A fast, Rust-backed drop-in replacement for Python's built-in `uuid` module, supporting RFC 9562 (UUIDv6, UUIDv7, and UUIDv8).
10051014

10061015
### Functional Programming
10071016

@@ -1010,7 +1019,7 @@ _Functional Programming with Python._
10101019
- [coconut](https://github.com/evhub/coconut) - A variant of Python built for simple, elegant, Pythonic functional programming.
10111020
- [functools](https://docs.python.org/3/library/functools.html) - (Python standard library) Higher-order functions and operations on callable objects.
10121021
- [funcy](https://github.com/Suor/funcy) - A fancy and practical functional tools.
1013-
- [more-itertools](https://github.com/erikrose/more-itertools) - More routines for operating on iterables, beyond `itertools`.
1022+
- [more-itertools](https://github.com/more-itertools/more-itertools) - More routines for operating on iterables, beyond `itertools`.
10141023
- [returns](https://github.com/dry-python/returns) - A set of type-safe monads, transformers, and composition utilities.
10151024
- [toolz](https://github.com/pytoolz/toolz) - A collection of functional utilities for iterators, functions, and dictionaries. Also available as [cytoolz](https://github.com/pytoolz/cytoolz/) for Cython-accelerated performance.
10161025

@@ -1065,7 +1074,7 @@ _Local PyPI repository server and proxies._
10651074

10661075
- [bandersnatch](https://github.com/pypa/bandersnatch/) - PyPI mirroring tool provided by Python Packaging Authority (PyPA).
10671076
- [devpi](https://github.com/devpi/devpi) - PyPI server and packaging/testing/release tool.
1068-
- [warehouse](https://github.com/pypa/warehouse) - Next generation Python Package Repository (PyPI).
1077+
- [warehouse](https://github.com/pypi/warehouse) - Next generation Python Package Repository (PyPI).
10691078

10701079
### Distribution
10711080

@@ -1118,6 +1127,7 @@ _Libraries for programming with hardware._
11181127

11191128
- [bleak](https://github.com/hbldh/bleak) - A cross platform Bluetooth Low Energy Client for Python using asyncio.
11201129
- [pynput](https://github.com/moses-palmer/pynput) - A library to control and monitor input devices.
1130+
- [synology-api](https://github.com/N4S4/synology-api) - Python wrapper for Synology NAS APIs: Surveillance Station, File Station, Download Station, Docker, and 50+ other endpoints.
11211131

11221132
### Microsoft Windows
11231133

@@ -1131,7 +1141,7 @@ _Python programming on Microsoft Windows._
11311141

11321142
_Useful libraries or tools that don't fit in the categories above._
11331143

1134-
- [blinker](https://github.com/jek/blinker) - A fast Python in-process signal/event dispatching system.
1144+
- [blinker](https://github.com/pallets-eco/blinker) - A fast Python in-process signal/event dispatching system.
11351145
- [boltons](https://github.com/mahmoud/boltons) - A set of pure-Python utilities.
11361146
- [itsdangerous](https://github.com/pallets/itsdangerous) - Various helpers to pass trusted data to untrusted environments.
11371147
- [tryton](https://github.com/tryton/tryton) - A general-purpose business framework.

SPONSORSHIP.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ Your sponsorship puts your product in front of developers at the exact moment th
3434
## Previously Sponsored By
3535

3636
- [Warp](https://www.warp.dev/) - The terminal for modern developers.
37+
- [pyr](https://pyrun.dev) - Zero-config Python project manager.
3738

3839
## Get Started
3940

uv.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)