An opinionated list of awesome Python frameworks, libraries, software and resources.
Inspired by 32332⭐ 5139🍴 awesome-php).
- Awesome Python
- Admin Panels
- Algorithms and Design Patterns
- ASGI Servers
- Asynchronous Programming
- Audio
- Authentication
- Build Tools
- Built-in Classes Enhancement
- Caching
- CMS
- Code Analysis
- Command-line Interface Development
- Command-line Tools
- Computer Vision
- Configuration Files
- Cryptography
- Data Analysis
- Data Validation
- Data Visualization
- Database Drivers
- Database
- Date and Time
- Debugging Tools
- Deep Learning
- DevOps Tools
- Distributed Computing
- Distribution
- Documentation
- Downloader
- Editor Plugins and IDEs
- Environment Management
- File Manipulation
- Functional Programming
- Game Development
- Geolocation
- GUI Development
- Hardware
- HTML Manipulation
- HTTP Clients
- Image Processing
- Implementations
- Interactive Interpreter
- Internationalization
- Job Scheduler
- Logging
- Machine Learning
- Miscellaneous
- Natural Language Processing
- Network Virtualization
- ORM
- Package Management
- Package Repositories
- Penetration testing
- Permissions
- Processes
- Recommender Systems
- Refactoring
- RESTful API
- Robotics
- RPC Servers
- Science
- Search
- Serialization
- Serverless Frameworks
- Shell
- Specific Formats Processing
- Static Site Generator
- Task Queues
- Template Engine
- Testing
- Text Processing
- URL Manipulation
- Video
- Web Asset Management
- Web Content Extracting
- Web Crawling
- Web Frameworks
- WebSocket
- WSGI Servers
- Resources
- Contributing
Libraries for administrative interfaces.
7868⭐869🍴ajenti) - The admin panel your servers deserve.3927⭐658🍴django-grappelli) - A jazzy skin for the Django Admin-Interface.3159⭐319🍴django-unfold) - Elevate your Django admin with a stunning modern interface, powerful features, and seamless user experience.6050⭐1630🍴flask-admin) - Simple and extensible administrative interface framework for Flask.7098⭐1141🍴flower) - Real-time monitor and web admin for Celery.364⭐19🍴func-to-web) - Instantly create web UIs from Python functions using type hints. Zero frontend code required.1788⭐165🍴jet-bridge) - Admin panel framework for any application with nice UI (ex Jet Django).43295⭐4054🍴streamlit) - A framework which lets you build dashboards, generate reports, or create chat apps in minutes.2214⭐184🍴wooey) - A Django app which creates automatic web UIs for Python scripts.
Python implementation of data structures, algorithms and design patterns. Also see 24647⭐ 2935🍴 awesome-algorithms).
- Algorithms
24964⭐4706🍴algorithms) - Minimal examples of data structures and algorithms.3056⭐626🍴python-ds) - A collection of data structure and algorithms for coding interviews.3905⭐222🍴sortedcontainers) - Fast and pure-Python implementation of sorted collections.217371⭐50020🍴thealgorithms) - All Algorithms implemented in Python.
- Design Patterns
42719⭐7066🍴python-patterns) - A collection of design patterns in Python.6394⭐560🍴transitions) - A lightweight, object-oriented finite state machine implementation.
🌎 ASGI-compatible web servers._
2634⭐284🍴daphne) - A HTTP, HTTP2 and WebSocket protocol server for ASGI and ASGI-HTTP.4979⭐143🍴granian) - A Rust HTTP server for Python applications built on top of Hyper and Tokio, supporting WSGI/ASGI/RSGI.1512⭐135🍴hypercorn) - An ASGI and WSGI Server based on Hyper libraries and inspired by Gunicorn.10347⭐902🍴uvicorn) - A lightning-fast ASGI server implementation, using uvloop and httptools.
Libraries for asynchronous, concurrent and parallel execution. Also see 4990⭐ 342🍴 awesome-asyncio).
- 🌎 asyncio - (Python standard library) Asynchronous I/O, event loop, coroutines and tasks.
4990⭐342🍴awesome-asyncio)
- 🌎 concurrent.futures - (Python standard library) A high-level interface for asynchronously executing callables.
6433⭐961🍴gevent) - A coroutine-based Python networking library that uses1794⭐264🍴greenlet).- 🌎 multiprocessing - (Python standard library) Process-based parallelism.
7127⭐380🍴trio) - A friendly library for async concurrency and I/O.5938⭐1206🍴twisted) - An event-driven networking engine.11622⭐600🍴uvloop) - Ultra fast asyncio event loop.
Libraries for manipulating audio and its metadata.
- Audio
3254⭐150🍴audioFlux) - A library for audio and music analysis, feature extraction.537⭐112🍴audioread) - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.6715⭐1468🍴dejavu) - Audio fingerprinting and recognition.940⭐149🍴kapre) - Keras Audio Preprocessors.8168⭐1032🍴librosa) - Python library for audio and music analysis.2395⭐254🍴matchering) - A library for automated reference audio mastering.- mingus - An advanced music theory and notation package with MIDI file and playback support.
6215⭐1221🍴pyaudioanalysis) - Audio feature extraction, classification, segmentation and applications.9725⭐1122🍴pydub) - Manipulate audio with a simple and easy high level interface.396⭐59🍴timeside) - Open web audio processing framework.
- Metadata
14653⭐1973🍴beets) - A music library manager and 🌎 MusicBrainz tagger.629⭐67🍴eyed3) - A tool for working with audio files, specifically MP3 files containing ID3 metadata.1842⭐186🍴mutagen) - A Python module to handle audio metadata.799⭐105🍴tinytag) - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
Libraries for implementing authentication schemes.
- OAuth
5192⭐521🍴authlib) - JavaScript Object Signing and Encryption draft implementation.10288⭐3123🍴django-allauth) - Authentication app for Django that "just works."3303⭐827🍴django-oauth-toolkit) - OAuth 2 goodies for Django.2951⭐500🍴oauthlib) - A generic and thorough implementation of the OAuth request-signing logic.
- JWT
5577⭐722🍴pyjwt) - JSON Web Token implementation in Python.?⭐?🍴python-jose) - A JOSE implementation in Python.
Compile software from source code.
505⭐277🍴bitbake) - A make-like build tool for embedded Linux.611⭐177🍴buildout) - A build system for creating, assembling and deploying applications from multiple parts.8857⭐856🍴platformio) - A console tool to build code with different development platforms.1938⭐269🍴pybuilder) - A continuous build tool written in pure Python.2345⭐341🍴scons) - A software construction tool.
Libraries for enhancing Python built-in classes.
5720⭐409🍴attrs) - Replacement for__init__,__eq__,__repr__, etc. boilerplate in class definitions.1570⭐64🍴bidict) - Efficient, Pythonic bidirectional map data structures and related functionality..2817⭐118🍴box) - Python dictionaries with advanced dot notation access.- 🌎 dataclasses - (Python standard library) Data classes.
223⭐25🍴dotteddict) - A library that provides a method of accessing lists and dicts with a dotted path notation.
Content Management Systems.
1060⭐236🍴feincms) - One of the most advanced Content Management Systems built on Django.2008⭐513🍴indico) - A feature-rich event management system, made @ 🌎 CERN.20097⭐4407🍴wagtail) - A Django content management system.
Libraries for caching data.
543⭐149🍴beaker) - A WSGI middleware for sessions and caching.885⭐160🍴django-cache-machine) - Automatic caching and invalidation for Django models.2262⭐238🍴django-cacheops) - A slick ORM cache with automatic granular event-driven invalidation.290⭐48🍴dogpile.cache) - dogpile.cache is a next generation replacement for Beaker made by the same authors.- 🌎 hermescache - Python caching library with tag-based invalidation and dogpile effect prevention.
493⭐138🍴pylibmc) - A Python wrapper around the 🌎 libmemcached interface.2816⭐155🍴python-diskcache) - SQLite and file backed cache backend with faster lookups than memcached and redis.
Tools of static analysis, linters and code quality checkers. Also see 14348⭐ 1416🍴 awesome-static-analysis).
- Code Analysis
4520⭐328🍴code2flow) - Turn your Python and JavaScript code into DOT flowcharts.2061⭐179🍴prospector) - A tool to analyze Python code.4302⭐178🍴vulture) - A tool for finding and analyzing dead Python code.
- Code Linters
3754⭐340🍴flake8) - A wrapper aroundpycodestyle,pyflakesand McCabe.1273⭐51🍴awesome-flake8-extensions)
5643⭐1212🍴pylint) - A fully customizable source code analyzer.45495⭐1738🍴ruff) - An extremely fast Python linter and code formatter.
- Code Formatters
- Static Type Checkers, also see
1939⭐75🍴awesome-python-typing)20167⭐3098🍴mypy) - Check variable types during compile time.7144⭐451🍴pyre-check) - Performant type checking.16911⭐201🍴ty) - An extremely fast Python type checker and language server.4991⭐1958🍴typeshed) - Collection of library stubs for Python, with static types.
- Static Type Annotations Generators
4990⭐189🍴monkeytype) - A system for Python that generates static type annotations by collecting runtime types.5033⭐290🍴pytype) - Pytype checks and infers types for Python code - without requiring type annotations.
Libraries for building command-line applications.
- Command-line Application Development
1339⭐117🍴cement) - CLI Application Framework for Python.?⭐?🍴click) - A package for creating beautiful command line interfaces in a composable way.258⭐52🍴cliff) - A framework for creating command-line programs with multi-level commands.28082⭐1465🍴python-fire) - A library for creating command line interfaces from absolutely any Python object.10238⭐759🍴python-prompt-toolkit) - A library for building powerful interactive command lines.18732⭐832🍴Typer) - Modern CLI framework that uses Python type hints. Built on Click and Pydantic.
- Terminal Rendering
6232⭐231🍴alive-progress) - A new kind of Progress Bar, with real-time throughput, eta and very cool animations.4255⭐262🍴asciimatics) - A package to create full-screen text UIs (from interactive forms to ASCII animations).1914⭐142🍴bashplotlib) - Making basic plots in the terminal.3764⭐267🍴colorama) - Cross-platform colored terminal text.55315⭐2010🍴rich) - Python library for rich text and beautiful formatting in the terminal. Also provides a greatRichHandlerlog handler.33985⭐1081🍴textual) - A framework for building interactive user interfaces that run in the terminal and the browser.30915⭐1425🍴tqdm) - Fast, extensible progress bar for loops and CLI.
Useful CLI-based tools for productivity.
- Productivity Tools
978⭐95🍴ccb) - A CLI tool to orchestrate multiple LLMs (Claude, Gemini, etc.) in Tmux panes with cross-agent interaction.24612⭐2192🍴cookiecutter) - A command-line utility that creates projects from cookiecutters (project templates).3090⭐242🍴copier) - A library and command-line utility for rendering projects templates.3557⭐101🍴doitlive) - A tool for live presentations in the terminal.10805⭐866🍴howdoi) - Instant coding answers via the command line.4699⭐384🍴invoke) - A tool for managing shell-oriented subprocesses and organizing executable Python code into CLI-invokable tasks.5223⭐280🍴pathpicker) - Select files out of bash output.95368⭐3830🍴thefuck) - Correcting your previous console command.4403⭐236🍴tmuxp) - A41234⭐2394🍴tmux) session manager.750⭐32🍴try) - A dead simple CLI to try out python packages - it's never been easier.
- CLI Enhancements
37445⭐3808🍴httpie) - A command line HTTP client, a user-friendly cURL replacement.2723⭐114🍴iredis) - Redis CLI with autocompletion and syntax highlighting.3180⭐91🍴litecli) - SQLite CLI with autocompletion and syntax highlighting.11861⭐680🍴mycli) - MySQL CLI with autocompletion and syntax highlighting.12999⭐578🍴pgcli) - PostgreSQL CLI with autocompletion and syntax highlighting.
Libraries for Computer Vision.
28877⭐3532🍴easyocr) - Ready-to-use OCR with 40+ languages supported.?⭐?🍴kornia) - Open Source Differentiable Computer Vision Library for PyTorch.- 🌎 opencv - Open Source Computer Vision Library.
6304⭐749🍴pytesseract) - A wrapper for Google Tesseract OCR.2150⭐260🍴tesserocr) - Another simple, Pillow-friendly, wrapper around thetesseract-ocrAPI for OCR.
Libraries for storing and parsing configuration options.
337⭐82🍴configobj) - INI file parser with validation.- 🌎 configparser - (Python standard library) INI file parser.
4244⭐311🍴dynaconf) - Dynaconf is a configuration manager with plugins for Django, Flask and FastAPI.10167⭐796🍴hydra) - Hydra is a framework for elegantly configuring complex applications.3013⭐211🍴python-decouple) - Strict separation of settings from code.
7456⭐1697🍴cryptography) - A package designed to expose cryptographic primitives and recipes to Python developers.9664⭐2034🍴paramiko) - The leading native Python SSHv2 protocol library.1179⭐255🍴pynacl) - Python binding to the Networking and Cryptography (NaCl) library.
Libraries for data analysis.
4098⭐722🍴aws-sdk-pandas) - Pandas on AWS.10725⭐804🍴datasette) - An open source multi-tool for exploring and publishing data.?⭐?🍴desbordante) - An open source data profiler for complex pattern discovery.51671⭐3526🍴docling) - Library for converting documents into structured data.1540⭐232🍴optimus) - Agile Data Science Workflows made easy with PySpark.- pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.
59165⭐1578🍴pathway) - Real-time data processing framework for Python with reactive dataflows.37249⭐2585🍴polars) - A fast DataFrame library implemented in Rust with a Python API.
Libraries for validating data. Used for forms in many cases.
3262⭐239🍴cerberus) - A lightweight and extensible data validation library.464⭐145🍴colander) - Validating and deserializing data obtained via XML, JSON, an HTML form post.4915⭐608🍴jsonschema) - An implementation of JSON Schema for Python.26632⭐2414🍴pydantic) - Data validation using Python type hints.2940⭐216🍴schema) - A library for validating Python data structures.2590⭐290🍴schematics) - Data Structure Validation.1847⭐218🍴voluptuous) - A Python data validation library.
Libraries for visualizing data. Also see 34887⭐ 4518🍴 awesome-javascript).
10230⭐834🍴altair) - Declarative statistical visualization library for Python.20318⭐4249🍴bokeh) - Interactive Web Plotting for Python.3682⭐476🍴bqplot) - Interactive Plotting Library for the Jupyter Notebook.1582⭐391🍴cartopy) - A cartographic python library with matplotlib support.41967⭐2713🍴diagrams) - Diagram as Code.22299⭐8175🍴matplotlib) - A Python 2D plotting library.18227⭐2776🍴plotly) - Interactive graphing library for Python.4494⭐245🍴plotnine) - A grammar of graphics for Python based on ggplot2.2746⭐417🍴pygal) - A Python SVG Charts Creator.?⭐?🍴pygraphviz) - Python interface to Graphviz.4283⭐1141🍴pyqtgraph) - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.13698⭐2080🍴seaborn) - Statistical data visualization using Matplotlib.260⭐19🍴UltraPlot) - Matplotlib wrapper for publication-ready scientific figures with minimal code. Includes advanced subplot management, panel layouts, and batteries-included geoscience plotting.3535⭐629🍴vispy) - High-performance scientific visualization based on OpenGL.
Databases implemented in Python.
- 🌎 DuckDB - An in-process SQL OLAP database management system; optimized for analytics and fast queries, similar to SQLite but for analytical workloads.
1061⭐132🍴pickleDB) - A simple and lightweight key-value store for Python.7432⭐597🍴tinydb) - A tiny, document-oriented database.748⭐100🍴zodb) - A native object database for Python. A key-value and object graph database.
Libraries for connecting and operating databases.
- MySQL - awesome-mysql
2525⭐446🍴mysqlclient) - MySQL connector with Python 3 support 🌎 mysql-python fork).7844⭐1442🍴pymysql) - A pure Python MySQL driver compatible to mysql-python.
- PostgreSQL -
11653⭐925🍴awesome-postgres)2280⭐209🍴psycopg) - The most popular PostgreSQL adapter for Python.
- SQlite -
382⭐42🍴awesome-sqlite)1999⭐124🍴sqlite-utils) - Python CLI utility and library for manipulating SQLite databases.- 🌎 sqlite3 - (Python standard library) SQlite interface compliant with DB-API 2.0.
- Other Relational Databases
1295⭐225🍴clickhouse-driver) - Python driver with native interface for ClickHouse.877⭐327🍴pymssql) - A simple database interface to Microsoft SQL Server.
- NoSQL Databases
1424⭐568🍴cassandra-driver) - The Python Driver for Apache Cassandra.212⭐30🍴Django MongoDB Backend) - Official MongoDB database backend for Django.5887⭐1448🍴kafka-python) - The Python client for Apache Kafka.4332⭐1137🍴pymongo) - The official Python client for MongoDB.13460⭐2655🍴redis-py) - The Python client for Redis.2631⭐272🍴Beanie) - An asynchronous Python object-document mapper (ODM) for MongoDB.
Libraries for working with dates and times.
9019⭐705🍴arrow) - A Python library that offers a sensible and human-friendly approach to creating, manipulating, formatting and converting dates, times and timestamps.2592⭐528🍴dateutil) - Extensions to the standard Python 🌎 datetime module.6612⭐415🍴pendulum) - Python datetimes made easy.- 🌎 pytz - World timezone definitions, modern and historical. Brings the 🌎 tz database into Python.
Libraries for debugging code.
- pdb-like Debugger
- Tracing
401⭐25🍴manhole) - Debugging UNIX socket connections and present the stacktraces for all threads and an interactive prompt.865⭐51🍴python-hunter) - A flexible code tracing toolkit.
- Profiler
- Others
8348⭐1072🍴django-debug-toolbar) - Display various debug information for Django.981⭐149🍴flask-debugtoolbar) - A port of the django-debug-toolbar to flask.10006⭐214🍴icecream) - Inspect variables, expressions, and program execution with a single, simple function call.569⭐32🍴memory-graph) - Visualize Python data at runtime to debug references, mutability, and aliasing.2209⭐535🍴pyelftools) - Parsing and analyzing ELF files and DWARF debugging information.
Frameworks for Neural Networks and Deep Learning. Also see 27421⭐ 6276🍴 awesome-deep-learning).
34758⭐3389🍴jax) - a library for high-performance numerical computing with automatic differentiation and JIT compilation.63754⭐19681🍴keras) - A high-level neural networks library and capable of running on top of either TensorFlow or Theano.30799⭐3663🍴pytorch-lightning) - Deep learning framework to train, deploy, and ship AI products Lightning fast.97086⭐26703🍴pytorch) - Tensors and Dynamic neural networks in Python with strong GPU acceleration.12652⭐2052🍴stable-baselines3) - PyTorch implementations of Stable Baselines (deep) reinforcement learning algorithms.193572⭐75209🍴tensorflow) - The most popular Deep Learning framework created by Google.
Software and libraries for DevOps.
- Cloud Providers
9675⭐1951🍴boto3) - Python interface to Amazon Web Services.
- Configuration Management
67848⭐24213🍴ansible) - A radically simple IT automation platform.3580⭐1040🍴cloudinit) - A multi-distribution package that handles early initialization of a cloud instance.- 🌎 openstack - Open source software for building private and public clouds.
4703⭐459🍴pyinfra) - A versatile CLI tools and python libraries to automate infrastructure.15070⭐5570🍴saltstack) - Infrastructure automation and management system.
- SSH-style Deployment
- Process Management
8982⭐1265🍴supervisor) - Supervisor process control system for UNIX.
- Monitoring
11060⭐1458🍴psutil) - A cross-platform process and system utilities module.
- Backup
12908⭐820🍴borg) - A deduplicating archiver with compression and encryption.
- Chaos Engineering
1990⭐198🍴chaostoolkit) - A Chaos Engineering toolkit & Orchestration for Developers.
Frameworks and libraries for Distributed Computing.
- Batch Processing
13726⭐1838🍴dask) - A flexible parallel computing library for analytic computing.18642⭐2451🍴luigi) - A module that helps you build complex pipelines of batch jobs.897⭐132🍴mpi4py) - Python bindings for MPI.42730⭐29046🍴PySpark) - 🌎 Apache Spark Python API.?⭐?🍴Ray) - A system for parallel and distributed Python that unifies the machine learning ecosystem.
- Stream Processing
1505⭐221🍴streamparse) - Run Python code against real-time streams of data via Apache Storm.
Libraries to create packaged executables for release distribution.
1527⭐241🍴cx_freeze) - It is a Python tool that converts Python scripts into standalone executables and installers for Windows, macOS, and Linux.14452⭐760🍴Nuitka) - Compiles Python programs into high-performance standalone executables (cross-platform, supports all Python versions).420⭐43🍴py2app) - Freezes Python scripts (Mac OS X).992⭐107🍴py2exe) - Freezes Python scripts (Windows).4928⭐352🍴pyarmor) - A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.12865⭐2012🍴pyinstaller) - Converts Python programs into stand-alone executables (cross-platform).1911⭐108🍴shiv) - A command line utility for building fully self-contained zipapps (PEP 441), but with all their dependencies included.
Libraries for generating project documentation.
?⭐?🍴sphinx) - Python Documentation generator.972⭐72🍴awesome-sphinxdoc)
2456⭐212🍴pdoc) - Epydoc replacement to auto generate API documentation for Python libraries.
Libraries for downloading.
15854⭐2789🍴akshare) - A financial data interface library, built for human beings!1633⭐303🍴edgartools) - Library for downloading structured data from SEC EDGAR filings and XBRL financial statements.59684⭐5814🍴OpenBB) - A financial data platform for analysts, quants and AI agents.4856⭐913🍴s3cmd) - A command line tool for managing Amazon S3 and CloudFront.21232⭐3040🍴yfinance) - Easy Pythonic way to download market and financial data from Yahoo Finance.?⭐?🍴youtube-dl) - A command-line program to download videos from YouTube and other video sites.
- Emacs
1936⭐259🍴elpy) - Emacs Python Development Environment.
- Vim
5316⭐368🍴jedi-vim) - Vim bindings for the Jedi auto-completion library for Python.5474⭐768🍴python-mode) - An all in one plugin for turning Vim into a Python IDE.26351⭐2779🍴YouCompleteMe) - Includes6103⭐525🍴Jedi)-based completion engine for Python.
- Visual Studio
2565⭐674🍴PTVS) - Python Tools for Visual Studio.
- Visual Studio Code
- 🌎 Python - The official VSCode extension with rich support for Python.
- IDE
Libraries for sending and parsing email.
- Mail Servers
3445⭐453🍴modoboa) - A mail hosting and management platform including a modern Web UI.
- Clients
- Others
Libraries for Python version and virtual environment management.
44192⭐3237🍴pyenv) - Simple Python version management.6959⭐565🍴pyenv-win) - Pyenv for Windows, Simple Python version management.78219⭐2509🍴uv) - An extremely fast Python package and project manager, written in Rust.5007⭐1082🍴virtualenv) - A tool to create isolated Python environments.
Libraries for file manipulation.
- 🌎 mimetypes - (Python standard library) Map filenames to MIME types.
1123⭐151🍴path.py) - A module wrapper for 🌎 os.path.- 🌎 pathlib - (Python standard library) An cross-platform, object-oriented path library.
2877⭐302🍴python-magic) - A Python interface to the libmagic file type identification library.7241⭐739🍴watchdog) - API and shell utilities to monitor file system events.2399⭐130🍴watchfiles) - Simple, modern and fast file watching and code reload in python.
Functional Programming with Python.
4306⭐134🍴coconut) - A variant of Python built for simple, elegant, Pythonic functional programming.?⭐?🍴cytoolz) - Cython implementation ofToolz: High performance functional utilities.3497⭐150🍴funcy) - A fancy and practical functional tools.4036⭐310🍴more-itertools) - More routines for operating on iterables, beyonditertools.4219⭐143🍴returns) - A set of type-safe monads, transformers, and composition utilities.5114⭐269🍴toolz) - A collection of functional utilities for iterators, functions, and dictionaries.
Libraries for working with graphical user interface applications.
- 🌎 curses - Built-in wrapper for ncurses used to create terminal GUI applications.
13119⭐1155🍴CustomTkinter) - A modern and customizable python UI-library based on Tkinter.?⭐?🍴DearPyGui) - A Simple GPU accelerated Python GUI framework1570⭐131🍴enaml) - Creating beautiful user-interfaces with Declarative Syntax like QML.- 🌎 Flet - Cross-platform GUI framework for building modern apps in pure Python.
3346⭐259🍴Flexx) - Flexx is a pure Python toolkit for creating GUI's, that uses web technology for its rendering.22040⭐1049🍴Gooey) - Turn command line programs into a full GUI application with one line.- 🌎 kivy - A library for creating NUI applications, running on Windows, Linux, Mac OS X, Android and iOS.
15220⭐902🍴NiceGUI) - An easy-to-use, Python-based UI framework, which shows up in your web browser.2150⭐328🍴pyglet) - A cross-platform windowing and multimedia library for Python.- 🌎 PyGObject - Python Bindings for GLib/GObject/GIO/GTK+ (GTK+3).
- 🌎 PySide - Qt for Python offers the official Python bindings for 🌎 Qt, this is same as PyQt but it's the official binding with different licensing.
- 🌎 PyQt - Python bindings for the 🌎 Qt cross-platform application and UI framework.
?⭐?🍴pywebview) - A lightweight cross-platform native wrapper around a webview component.- 🌎 Tkinter - Tkinter is Python's de-facto standard GUI package.
5291⭐791🍴Toga) - A Python native, OS native GUI toolkit.- urwid - A library for creating terminal GUI applications with strong support for widgets, events, rich colors, etc.
- 🌎 wxPython - A blending of the wxWidgets C++ class library with the Python.
Libraries for working with GraphQL.
?⭐?🍴graphene) - GraphQL framework for Python.485⭐146🍴strawberry-django) - Strawberry GraphQL integration with Django.
Awesome game development libraries.
- 🌎 Arcade - Arcade is a modern Python framework for crafting games with compelling graphics and sound.
- 🌎 Cocos2d - A framework for building 2D games, demos, and other graphical/interactive applications.
- Harfang3D - Python framework for 3D, VR and game development.
- 🌎 Panda3D - 3D game engine developed by Disney.
- Pygame - Pygame is a set of Python modules designed for writing games.
- PyOgre - Python bindings for the Ogre 3D render engine, can be used for games, simulations, anything 3D.
- PyOpenGL - Python ctypes bindings for OpenGL and it's related APIs.
- 🌎 PySDL2 - A ctypes based wrapper for the SDL2 library.
- 🌎 RenPy - A Visual Novel engine.
Libraries for geocoding addresses and working with latitudes and longitudes.
1516⭐302🍴django-countries) - A Django app that provides a country field for models and forms.- 🌎 geodjango - A world-class geographic web framework.
984⭐127🍴geojson) - Python bindings and utilities for GeoJSON.5035⭐1001🍴geopandas) - Python tools for geographic data (GeoSeries/GeoDataFrame) built on pandas.4763⭐660🍴geopy) - Python Geocoding Toolbox.
Libraries for working with HTML and XML.
- 🌎 beautifulsoup - Providing Pythonic idioms for iterating, searching, and modifying HTML or XML.
- 🌎 cssutils - A CSS library for Python.
1217⭐302🍴html5lib) - A standards-compliant library for parsing and serializing HTML documents and fragments.?⭐?🍴JustHTML) - A pure Python HTML5 parser that just works.- lxml - A very fast, easy-to-use and versatile library for handling HTML and XML.
685⭐171🍴markupsafe) - Implements a XML/HTML/XHTML Markup safe string for Python.2379⭐184🍴pyquery) - A jQuery-like library for parsing HTML.631⭐88🍴untangle) - Converts XML documents to Python objects for easy access.- WeasyPrint - A visual rendering engine for HTML and CSS that can export to PDF.
- 🌎 xmldataset - Simple XML Parsing.
5719⭐467🍴xmltodict) - Working with XML feel like you are working with JSON.
Libraries for working with HTTP.
14958⭐1026🍴httpx) - A next generation HTTP client for Python.53700⭐9725🍴requests) - HTTP Requests for Humans.606⭐143🍴treq) - Python requests like API built on top of Twisted's HTTP client.4001⭐1281🍴urllib3) - A HTTP library with thread-safe connection pooling, file post support, sanity friendly.
Libraries for programming with hardware.
2311⭐343🍴bleak) - A cross platform Bluetooth Low Energy Client for Python using asyncio.964⭐141🍴mouse) - Hook and simulate global mouse events on Windows and Linux.2091⭐280🍴pynput) - A library to control and monitor input devices.12025⭐2188🍴scapy) - A brilliant packet manipulation library.
Libraries for manipulating images.
13347⭐2400🍴pillow) - Pillow is the friendly PIL fork.- pymatting - A library for alpha matting.
644⭐134🍴python-barcode) - Create barcodes in Python with no extra dependencies.4836⭐726🍴python-qrcode) - A pure Python QR Code generator.773⭐56🍴pyvips) - A fast image processing library with low memory needs.1224⭐152🍴quads) - Computer art based on quadtrees.- scikit-image - A Python library for (scientific) image processing.
10450⭐864🍴thumbor) - A smart imaging service. It enables on-demand crop, re-sizing and flipping of images.1480⭐199🍴wand) - Python bindings for MagickWand, C API for ImageMagick.
Implementations of Python.
393⭐35🍴clpython) - Implementation of the Python programming language written in Common Lisp.71294⭐33993🍴cpython) - Default, most widely used implementation of the Python programming language written in C.10591⭐1608🍴cython) - Optimizing Static Compiler for Python.2725⭐308🍴ironpython) - Implementation of the Python programming language written in C#.21407⭐8687🍴micropython) - A lean and efficient Python programming language implementation.10877⭐1225🍴numba) - Python JIT compiler to LLVM aimed at scientific Python.2047⭐169🍴peachpy) - x86-64 assembler embedded in Python.- 🌎 pypy - A very fast and compliant implementation of the Python language.
?⭐?🍴pyston) - A Python implementation using JIT techniques.
Interactive Python interpreters (REPL).
2767⭐252🍴bpython) - A fancy interface to the Python interpreter.- 🌎 Jupyter Notebook (IPython) - A rich toolkit to help you make the most out of using Python interactively.
4535⭐452🍴awesome-jupyter)
18792⭐891🍴marimo) - Transform data and train models, feels like a next-gen notebook, stored as Git-friendly Python.5402⭐291🍴ptpython) - Advanced Python REPL built on top of the10238⭐759🍴python-prompt-toolkit).
Libraries for working with i18n.
- Babel - An internationalization library for Python.
Libraries for scheduling jobs.
- 🌎 Airflow - Airflow is a platform to programmatically author, schedule and monitor workflows.
- APScheduler - A light but powerful in-process task scheduler that lets you schedule functions.
851⭐275🍴django-schedule) - A calendaring app for Django.- doit - A task runner and build tool.
- 🌎 Joblib - A set of tools to provide lightweight pipelining in Python.
1183⭐92🍴Plan) - Writing crontab file in Python like a charm.21493⭐2089🍴Prefect) - A modern workflow orchestration framework that makes it easy to build, schedule and monitor robust data pipelines.12226⭐986🍴schedule) - Python job scheduling for humans.1852⭐336🍴Spiff) - A powerful workflow engine implemented in pure Python.- 🌎 TaskFlow - A Python library that helps to make task execution easy, consistent and reliable.
Libraries for generating and working with logs.
- logbook - Logging replacement for Python.
- 🌎 logging - (Python standard library) Logging facility for Python.
23529⭐766🍴loguru) - Library which aims to bring enjoyable logging in Python.2133⭐580🍴sentry-python) - Sentry SDK for Python.- 🌎 structlog - Structured logging made easy.
Libraries for Machine Learning. Also see 71536⭐ 15289🍴 awesome-machine-learning).
32651⭐6726🍴diffusers) - A library that provides pretrained diffusion models for generating and editing images, audio, and video.36999⭐8711🍴gym) - A toolkit for developing and comparing reinforcement learning algorithms.2190⭐334🍴Feature-engine) - sklearn compatible API with the widest toolset for feature engineering and selection.7497⭐2028🍴H2O) - Open Source Fast Scalable Machine Learning Platform.125572⭐20669🍴LangChain) - Building applications with LLMs through composability.46715⭐6771🍴LlamaIndex) - A data framework for your LLM application.1656⭐454🍴Metrics) - Machine learning evaluation metrics.38356⭐6093🍴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.5577⭐760🍴PraisonAI) - Production-ready Multi-AI Agents framework with self-reflection, 100+ LLM support, MCP integration, and agentic workflows.14549⭐1591🍴pydantic-ai) - A Python agent framework for building generative AI applications with structured schemas.72513⭐8024🍴RAGFlow) - An open-source RAG engine for document understanding and question answering with LLMs.21012⭐4912🍴rasa) - An open-source machine learning framework for automated text and voice-based conversations.- scikit-learn - The most popular Python library for Machine Learning with extensive documentation and community support.
- Spark ML - Apache Spark's scalable Machine Learning library for distributed computing.
155996⭐31919🍴Transformers) - A framework that lets you easily use pretrained transformer models for NLP, vision, and audio tasks.27944⭐8837🍴xgboost) - A scalable, portable, and distributed gradient boosting library.
Python programming on Microsoft Windows.
5391⭐769🍴PythonNet) - Python Integration with the .NET Common Language Runtime (CLR).5520⭐848🍴PyWin32) - Python Extensions for Windows.- 🌎 WinPython - Portable development environment for Windows 10/11.
Useful libraries or tools that don't fit in the categories above.
2018⭐187🍴blinker) - A fast Python in-process signal/event dispatching system.6848⭐378🍴boltons) - A set of pure-Python utilities.3103⭐231🍴itsdangerous) - Various helpers to pass trusted data to untrusted environments.1139⭐142🍴pluginbase) - A simple but flexible plugin system for Python.- tryton - A general-purpose business framework.
Libraries for working with human languages.
- General
16342⭐4413🍴gensim) - Topic Modeling for Humans.2451⭐324🍴langid.py) - Stand-alone language identification system.- nltk - A leading platform for building Python programs to work with human language data.
8855⭐1576🍴pattern) - A web mining module.2362⭐342🍴polyglot) - Natural language pipeline supporting hundreds of languages.- 🌎 spacy - A library for industrial-strength natural language processing in Python and Cython.
7723⭐935🍴Stanza) - The Stanford NLP Group's official Python library, supporting 60+ languages.
- Chinese
78784⭐15139🍴funNLP) - A collection of tools and datasets for Chinese NLP.34730⭐6721🍴jieba) - The most popular Chinese text segmentation library.6699⭐985🍴pkuseg-python) - A toolkit for Chinese word segmentation in various domains.6604⭐1365🍴snownlp) - A library for processing Chinese text.
Tools and libraries for Virtual Networking and SDN (Software Defined Networking).
5758⭐1796🍴mininet) - A popular network emulator and API written in Python.2422⭐579🍴napalm) - Cross-vendor API to manipulate network devices.650⭐478🍴pox) - A Python-based SDN control applications, such as OpenFlow SDN controllers.
Libraries that implement Object-Relational Mapping or data mapping techniques.
- Relational Databases
- 🌎 Django Models - The Django ORM.
- 🌎 SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper.
3024⭐156🍴awesome-sqlalchemy)
4846⭐297🍴dataset) - Store Python dicts in a database - works with SQLite, MySQL, and PostgreSQL.11921⭐1392🍴peewee) - A small, expressive ORM.?⭐?🍴pony) - ORM that provides a generator-oriented interface to SQL.?⭐?🍴pydal) - A pure Python Database Abstraction Layer.- 🌎 SQLModel - SQLModel is based on Python type annotations, and powered by Pydantic and SQLAlchemy.
- NoSQL Databases
4352⭐1233🍴mongoengine) - A Python Object-Document-Mapper for working with MongoDB.1162⭐92🍴ODMantic) - Sync and Async ODM for MongoDB built on top of Pydantic for model definition and validation.2644⭐432🍴PynamoDB) - A Pythonic interface for 🌎 Amazon DynamoDB.
Libraries for package and dependency management.
- 🌎 pip - The package installer for Python.
7990⭐640🍴pip-tools) - A set of tools to keep your pinned Python dependencies fresh.
?⭐?🍴conda) - Cross-platform, Python-agnostic binary package manager.7129⭐360🍴hatch) - Modern, extensible Python project management.34180⭐2392🍴poetry) - Python dependency management and packaging made easy.78219⭐2509🍴uv) - An extremely fast Python package and project manager, written in Rust.
Local PyPI repository server and proxies.
?⭐?🍴bandersnatch) - PyPI mirroring tool provided by Python Packaging Authority (PyPA).1130⭐140🍴devpi) - PyPI server and packaging/testing/release tool.3938⭐1106🍴warehouse) - Next generation Python Package Repository (PyPI).
Frameworks and tools for penetration testing.
11854⭐2105🍴fsociety) - A Penetration testing framework.14446⭐3301🍴setoolkit) - A toolkit for social engineering.36450⭐6182🍴sqlmap) - Automatic SQL injection and database takeover tool.
Libraries that allow or deny users access to data or functionality.
3872⭐581🍴django-guardian) - Implementation of per object permissions for Django 1.2+1966⭐151🍴django-rules) - A tiny but powerful app providing object-level permissions to Django, without requiring a database.
Libraries for starting and communicating with OS processes.
1746⭐89🍴delegator.py) - 🌎 Subprocesses for Humans 2.0.- 🌎 sarge - Yet another wrapper for subprocess.
7230⭐503🍴sh) - A full-fledged subprocess replacement for Python.
Libraries for building recommender systems.
14139⭐1219🍴annoy) - Approximate Nearest Neighbors in C++/Python optimized for memory usage.1090⭐205🍴fastFM) - A library for Factorization Machines.3762⭐628🍴implicit) - A fast Python implementation of collaborative filtering for implicit datasets.5066⭐725🍴lightfm) - A Python implementation of a number of popular recommendation algorithms.3042⭐424🍴spotlight) - Deep recommender models using PyTorch.6757⭐1047🍴Surprise) - A scikit for building and analyzing recommender systems.1303⭐221🍴tensorrec) - A Recommendation Engine Framework in TensorFlow.
Refactoring tools and libraries for Python.
- 🌎 Bowler - Safe code refactoring for modern Python.
2169⭐176🍴Rope) - Rope is a python refactoring library.
Libraries for building RESTful APIs.
- Django
29848⭐7062🍴django-rest-framework) - A powerful and flexible toolkit to build web APIs.3961⭐1162🍴django-tastypie) - Creating delicious APIs for Django apps.
- Flask
6747⭐738🍴eve) - REST API framework powered by Flask, MongoDB and good intentions.1468⭐193🍴flask-api) - Browsable Web APIs for Flask.6933⭐1046🍴flask-restful) - Quickly building REST APIs for Flask.
- Pyramid
390⭐152🍴cornice) - A RESTful framework for Pyramid.
- Framework agnostic
9785⭐977🍴falcon) - A high-performance framework for building cloud APIs and web app backends.94671⭐8613🍴fastapi) - A modern, fast, web framework for building APIs with Python 3.6+ based on standard Python type hints.6905⭐390🍴hug) - A Python 3 framework for cleanly exposing APIs.2044⭐219🍴sandman2) - Automated REST APIs for existing database-driven systems.18635⭐1583🍴sanic) - A Python 3.6+ web server and web framework that's written to go fast.
Libraries for robotics.
28470⭐7200🍴PythonRobotics) - This is a compilation of various robotics algorithms with visualizations.
RPC-compatible servers.
1691⭐250🍴RPyC) (Remote Python Call) - A transparent and symmetric RPC library for Python3235⭐381🍴zeroRPC) - zerorpc is a flexible RPC implementation based on ZeroMQ and MessagePack.
Libraries for scientific computing. Also see 350⭐ 47🍴 Python-for-Scientists).
- astropy - A community Python library for Astronomy.
1025⭐355🍴bcbio-nextgen) - Providing best-practice pipelines for fully automated high throughput sequencing analysis.645⭐243🍴bccb) - Collection of useful code related to biological analysis.- Biopython - Biopython is a set of freely available tools for biological computation.
- cclib - A library for parsing and interpreting the results of computational chemistry packages.
- Colour - Implementing a comprehensive number of colour theory transformations and algorithms.
2274⭐257🍴Karate Club) - Unsupervised machine learning toolbox for graph structured data.36561⭐2635🍴manim) - An animation engine for explanatory math videos.- 🌎 NetworkX - A high-productivity software for complex networks.
- NIPY - A collection of neuroimaging toolkits.
- NumPy - A fundamental package for scientific computing with Python.
?⭐?🍴ObsPy) - A Python toolbox for seismology.- 🌎 Open Babel - A chemical toolbox designed to speak the many languages of chemical data.
- PyDy - Short for Python Dynamics, used to assist with workflow in the modeling of dynamic motion.
9469⭐2192🍴PyMC) - Markov Chain Monte Carlo sampling toolkit.- QuTiP - Quantum Toolbox in Python.
- RDKit - Cheminformatics and Machine Learning Software.
- 🌎 SciPy - A Python-based ecosystem of open-source software for mathematics, science, and engineering.
4362⭐609🍴shapely) - Manipulation and analysis of geometric objects in the Cartesian plane.- 🌎 SimPy - A process-based discrete-event simulation framework.
11228⭐3321🍴statsmodels) - Statistical modeling and econometrics in Python.14356⭐5039🍴SymPy) - A Python library for symbolic mathematics.19374⭐4933🍴Zipline) - A Pythonic algorithmic trading library.
Libraries and software for indexing and performing search queries on data.
3802⭐1307🍴django-haystack) - Modular search for Django.3880⭐802🍴elasticsearch-dsl-py) - The official high-level Python client for Elasticsearch.- 🌎 elasticsearch-py - The official low-level Python client for 🌎 Elasticsearch.
695⭐339🍴pysolr) - A lightweight Python wrapper for 🌎 Apache Solr.- whoosh - A fast, pure Python search engine library.
Libraries for serializing complex data types.
7234⭐654🍴marshmallow) - A lightweight library for converting complex objects to and from simple Python datatypes.7840⭐284🍴orjson) - Fast, correct JSON library.756⭐63🍴pysimdjson) - A Python bindings for23171⭐1209🍴simdjson).530⭐53🍴python-rapidjson) - A Python wrapper around14973⭐3646🍴RapidJSON).293⭐23🍴toonify) - A compact, human-readable serialization format that reduces LLM token usage by 30-60% compared to JSON.4474⭐373🍴ultrajson) - A fast JSON decoder and encoder written in C with Python bindings.
Frameworks for developing serverless Python code.
1522⭐225🍴python-lambda) - A toolkit for developing and deploying Python code in AWS Lambda.3671⭐381🍴Zappa) - A tool for deploying WSGI applications on AWS Lambda and API Gateway.
Shells built with Python.
?⭐?🍴xonsh) - A Python-powered shell. Full-featured and cross-platform.
Libraries for parsing and manipulating specific text formats.
- General
4750⭐592🍴tablib) - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
- Office
2504⭐427🍴docxtpl) - Editing a docx document by jinja2 template- 🌎 openpyxl - A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
1281⭐166🍴pyexcel) - Providing one API for reading, manipulating and writing csv, ods, xls, xlsx and xlsm files.5422⭐1260🍴python-docx) - Reads, queries and modifies Microsoft Word 2007/2008 docx files.3166⭐667🍴python-pptx) - Python library for creating and updating PowerPoint (.pptx) files.3899⭐663🍴XlsxWriter) - A Python module for creating Excel .xlsx files.6⭐2🍴xlwings) - A BSD-licensed library that makes it easy to call Python from Excel and vice versa.
- PDF
6878⭐1023🍴pdfminer.six) - Pdfminer.six is a community maintained fork of the original PDFMiner.2625⭐218🍴pikepdf) - A powerful library for reading and editing PDF files, based on qpdf.9784⭐1540🍴PyPDF2) - A library capable of splitting, merging and transforming PDF pages.- 🌎 ReportLab - Allowing Rapid creation of rich PDF documents.
- Markdown
384⭐18🍴Jimmy) - Convert your notes to Markdown.2962⭐270🍴Mistune) - Fastest and full featured pure Python parsers of Markdown.4156⭐898🍴Python-Markdown) - A Python implementation of John Gruber’s Markdown.
- YAML
- PyYAML - YAML implementations for Python.
- CSV
6334⭐671🍴csvkit) - Utilities for converting to and working with CSV.
- Archive
454⭐56🍴unp) - A command line tool that can unpack archives easily.
Static site generator is a software that takes some text + templates as input and produces HTML files on the output.
3921⭐317🍴lektor) - An easy to use static CMS and blog engine.1877⭐304🍴makesite) - Simple, lightweight, and magic-free static site/blog generator (< 130 lines).?⭐?🍴mkdocs) - Markdown friendly documentation generator.2715⭐466🍴nikola) - A static website and blog generator.13203⭐1829🍴pelican) - Static site generator that supports Markdown and reST syntax.
Libraries for working with task queues.
- 🌎 celery - An asynchronous task queue/job queue based on distributed message passing.
5117⭐357🍴dramatiq) - A fast and reliable background task processing library for Python 3.5910⭐392🍴huey) - Little multi-threaded task queue.898⭐115🍴mrq) - A distributed worker task queue in Python using Redis & gevent.10565⭐1457🍴rq) - Simple job queues for Python.
Libraries and tools for templating and lexing.
- 🌎 Genshi - Python templating toolkit for generation of web-aware output.
11410⭐1690🍴Jinja2) - A modern and designer friendly templating language.- Mako - Hyperfast and lightweight templating for the Python platform.
Libraries for testing codebases and generating test data.
- Testing Frameworks
8422⭐629🍴hypothesis) - Hypothesis is an advanced Quickcheck style property based testing library.820⭐133🍴nose2) - The successor tonose, based on `unittest2.- 🌎 pytest - A mature full-featured Python testing tool.
11384⭐2516🍴Robot Framework) - A generic test automation framework.- 🌎 ScanAPI - Automated Testing and Documentation for your REST API.
- 🌎 unittest - (Python standard library) Unit testing framework.
- Test Runners
- GUI / Web Testing
27427⭐3165🍴locust) - Scalable user load testing tool written in Python.12254⭐1397🍴PyAutoGUI) - PyAutoGUI is a cross-platform GUI automation Python module for human beings.3004⭐195🍴Schemathesis) - A tool for automatic property-based testing of web applications built with Open API / Swagger specifications.- 🌎 Selenium - Python bindings for 🌎 Selenium 🌎 WebDriver.
2766⭐512🍴splinter) - Open source tool for testing web applications.
- Mock
- 🌎 doublex - Powerful test doubles framework for Python.
4485⭐290🍴freezegun) - Travel through time by mocking the datetime module.471⭐56🍴httmock) - A mocking library for requests for Python 2.6+ and 3.2+.2219⭐279🍴httpretty) - HTTP request mock tool for Python.- 🌎 mock - (Python standard library) A mocking and patching library.
309⭐48🍴mocket) - A socket mock framework with gevent/asyncio/SSL support.4317⭐360🍴responses) - A utility library for mocking out the requests Python library.2930⭐424🍴VCR.py) - Record and replay HTTP interactions on your tests.
- Object Factories
3771⭐410🍴factory_boy) - A test fixtures replacement for Python.954⭐95🍴mixer) - Another fixtures replacement. Supports Django, Flask, SQLAlchemy, Peewee and etc.1395⭐108🍴polyfactory) - mock data generation library with support to classes (continuation ofpydantic-factories)
- Code Coverage
- 🌎 coverage - Code coverage measurement.
- Fake Data
Libraries for parsing and manipulating plain texts.
- General
2317⭐266🍴chardet) - Python 2/3 compatible character encoding detector.- 🌎 difflib - (Python standard library) Helpers for computing deltas.
4011⭐125🍴ftfy) - Makes Unicode text less broken and more consistent automagically.?⭐?🍴Levenshtein) - Fast computation of Levenshtein distance and string similarity.276⭐25🍴pangu.py) - Paranoid text spacing.1534⭐153🍴pyfiglet) - An implementation of figlet written in Python.5249⭐629🍴pypinyin) - Convert Chinese hanzi (漢字) to pinyin (拼音).3513⭐255🍴textdistance) - Compute distance between sequences with 30+ algorithms.- 🌎 unidecode - ASCII transliterations of Unicode text.
- Slugify
491⭐42🍴awesome-slugify) - A Python slugify library that can preserve unicode.1584⭐113🍴python-slugify) - A Python slugify library that translates unicode to ASCII.328⭐50🍴unicode-slugify) - A slugifier that generates unicode slugs with Django as a dependency.
- Unique identifiers
- Parser
- pygments - A generic syntax highlighter.
2450⭐301🍴pyparsing) - A general purpose framework for generating parsers.701⭐106🍴python-nameparser) - Parsing human names into their individual components.3706⭐440🍴python-phonenumbers) - Parsing, formatting, storing and validating international phone numbers.1511⭐196🍴python-user-agents) - Browser user agent parser.3985⭐720🍴sqlparse) - A non-validating SQL parser.
Libraries for parsing URLs.
2795⭐157🍴furl) - A small Python library that makes parsing and manipulating URLs easy.301⭐36🍴purl) - A simple, immutable URL class with a clean API for interrogation and manipulation.1407⭐161🍴webargs) - A friendly library for parsing HTTP request arguments with built-in support for popular web frameworks.
Libraries for manipulating video and GIFs.
- 🌎 moviepy - A module for script-based movie editing with many formats, including animated GIFs.
151⭐23🍴scikit-video) - Video processing routines for SciPy.3673⭐277🍴vidgear) - Most Powerful multi-threaded Video Processing framework.
Tools for managing, compressing and minifying website assets.
2873⭐611🍴django-compressor) - Compresses linked and inline JavaScript or CSS into a single cached file.1545⭐374🍴django-pipeline) - An asset packaging library for Django.2929⭐889🍴django-storages) - A collection of custom storage back ends for Django.- fanstatic - Packages, optimizes, and serves static file dependencies as Python packages.
461⭐97🍴flask-assets) - Helps you integrate webassets into your Flask app.937⭐260🍴webassets) - Bundles, optimizes, and manages unique cache-busting URLs for static resources.
Libraries for extracting web contents.
2127⭐292🍴html2text) - Convert HTML to Markdown-formatted text.630⭐48🍴lassie) - Web Content Retrieval for Humans.671⭐89🍴micawber) - A small library for extracting rich content from URLs.14959⭐2132🍴newspaper) - News extraction, article extraction and content curation in Python.2885⭐356🍴python-readability) - Fast Python port of arc90's readability tool.13877⭐999🍴requests-html) - Pythonic HTML Parsing for Humans.3659⭐541🍴sumy) - A module for automatic summarization of text documents and HTML pages.4428⭐660🍴textract) - Extract text from any document, Word, PowerPoint, PDFs, etc.3552⭐235🍴toapi) - Every web site provides APIs.
Libraries to automate web scraping.
2272⭐353🍴feedparser) - Universal feed parser.2451⭐280🍴grab) - Site scraping framework.4843⭐385🍴mechanicalsoup) - A Python library for automating interaction with websites.59609⭐11223🍴scrapy) - A fast high-level screen scraping and web crawling framework.
Traditional full stack web frameworks. Also see 280839⭐ 27165🍴 RESTful API).
- Synchronous
86634⭐33577🍴django) - The most popular web framework in Python.1888⭐282🍴awesome-django)
71124⭐16684🍴flask) - A microframework for Python.12680⭐1585🍴awesome-flask)
- 🌎 pyramid - A small, fast, down-to-earth, open source Python web framework.
570⭐56🍴awesome-pyramid)
6828⭐291🍴fastHTML) - The fastest way to create an HTML app.78⭐8🍴awesome-fasthtml)
2360⭐134🍴masonite) - The modern and developer centric Python web framework.
- Asynchronous
7973⭐504🍴Litestar) - Production-ready, capable and extensible ASGI Web framework.2064⭐149🍴microdot) - The impossibly small web framework for Python and MicroPython.28048⭐1686🍴reflex) – A framework for building reactive, full-stack web applications entirely with python .22436⭐5543🍴tornado) - A web framework and asynchronous networking library.
Libraries for working with WebSocket.
2532⭐772🍴autobahn-python) - WebSocket & WAMP for Python on Twisted and 🌎 asyncio.6331⭐826🍴channels) - Developer-friendly asynchrony for Django.5629⭐579🍴websockets) - A library for building WebSocket servers and clients with a focus on correctness and simplicity.
WSGI-compatible web servers.
10410⭐1808🍴gunicorn) - Pre-forked, ported from Ruby's Unicorn project.- 🌎 uwsgi - A project aims at developing a full stack for building hosting services, written in C.
1565⭐180🍴waitress) - Multi-threaded, powers Pyramid.6832⭐1758🍴werkzeug) - A WSGI utility library for Python that powers Flask and can easily be embedded into your own projects.
Where to discover learning resources or new Python libraries.
- 🌎 Django Chat
- 🌎 PyPodcats
- 🌎 Python Bytes
- 🌎 Python Test
- 🌎 Talk Python To Me
- 🌎 The Real Python Podcast
Your contributions are always welcome! Please take a look at the contribution guidelines first.
If you have any question about this opinionated list, do not hesitate to contact 🌎 @VintaChen on Twitter.
280839⭐ 27165🍴 vinta/awesome-python)