An opinionated list of awesome Python frameworks, libraries, software and resources.
Inspired by 32297⭐ 5142🍴 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.
7858⭐865🍴ajenti) - The admin panel your servers deserve.3924⭐658🍴django-grappelli) - A jazzy skin for the Django Admin-Interface.3137⭐317🍴django-unfold) - Elevate your Django admin with a stunning modern interface, powerful features, and seamless user experience.6048⭐1631🍴flask-admin) - Simple and extensible administrative interface framework for Flask.7094⭐1142🍴flower) - Real-time monitor and web admin for Celery.351⭐18🍴func-to-web) - Instantly create web UIs from Python functions using type hints. Zero frontend code required.1789⭐165🍴jet-bridge) - Admin panel framework for any application with nice UI (ex Jet Django).43104⭐4028🍴streamlit) - A framework which lets you build dashboards, generate reports, or create chat apps in minutes.2211⭐184🍴wooey) - A Django app which creates automatic web UIs for Python scripts.
Python implementation of data structures, algorithms and design patterns. Also see 24568⭐ 2929🍴 awesome-algorithms).
- Algorithms
24946⭐4710🍴algorithms) - Minimal examples of data structures and algorithms.3052⭐626🍴python-ds) - A collection of data structure and algorithms for coding interviews.3896⭐223🍴sortedcontainers) - Fast and pure-Python implementation of sorted collections.216933⭐49968🍴thealgorithms) - All Algorithms implemented in Python.
- Design Patterns
42663⭐7063🍴python-patterns) - A collection of design patterns in Python.6386⭐562🍴transitions) - A lightweight, object-oriented finite state machine implementation.
🌎 ASGI-compatible web servers._
2627⭐283🍴daphne) - A HTTP, HTTP2 and WebSocket protocol server for ASGI and ASGI-HTTP.4920⭐142🍴granian) - Granian is a Rust HTTP server for Python applications built on top of Hyper and Tokio,supporting WSGI/ASGI/RSGI.1502⭐133🍴hypercorn) - An ASGI and WSGI Server based on Hyper libraries and inspired by Gunicorn.10300⭐900🍴uvicorn) - A lightning-fast ASGI server implementation, using uvloop and httptools.
Libraries for asynchronous, concurrent and parallel execution. Also see 4982⭐ 341🍴 awesome-asyncio).
- 🌎 asyncio - (Python standard library) Asynchronous I/O, event loop, coroutines and tasks.
4982⭐341🍴awesome-asyncio)
- 🌎 concurrent.futures - (Python standard library) A high-level interface for asynchronously executing callables.
6429⭐957🍴gevent) - A coroutine-based Python networking library that uses1793⭐263🍴greenlet).- 🌎 multiprocessing - (Python standard library) Process-based parallelism.
7102⭐379🍴trio) - A friendly library for async concurrency and I/O.5938⭐1204🍴twisted) - An event-driven networking engine.11595⭐600🍴uvloop) - Ultra fast asyncio event loop.
Libraries for manipulating audio and its metadata.
- Audio
3240⭐150🍴audioFlux) - A library for audio and music analysis, feature extraction.537⭐112🍴audioread) - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.6712⭐1468🍴dejavu) - Audio fingerprinting and recognition.938⭐149🍴kapre) - Keras Audio Preprocessors.8141⭐1023🍴librosa) - Python library for audio and music analysis.2371⭐249🍴matchering) - A library for automated reference audio mastering.- mingus - An advanced music theory and notation package with MIDI file and playback support.
6208⭐1221🍴pyaudioanalysis) - Audio feature extraction, classification, segmentation and applications.9709⭐1123🍴pydub) - Manipulate audio with a simple and easy high level interface.397⭐59🍴timeside) - Open web audio processing framework.
- Metadata
14583⭐1967🍴beets) - A music library manager and 🌎 MusicBrainz tagger.628⭐66🍴eyed3) - A tool for working with audio files, specifically MP3 files containing ID3 metadata.1834⭐186🍴mutagen) - A Python module to handle audio metadata.796⭐105🍴tinytag) - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
Libraries for implementing authentication schemes.
- OAuth
5176⭐518🍴authlib) - JavaScript Object Signing and Encryption draft implementation.10268⭐3124🍴django-allauth) - Authentication app for Django that "just works."3300⭐828🍴django-oauth-toolkit) - OAuth 2 goodies for Django.2950⭐500🍴oauthlib) - A generic and thorough implementation of the OAuth request-signing logic.
- JWT
5570⭐720🍴pyjwt) - JSON Web Token implementation in Python.?⭐?🍴python-jose) - A JOSE implementation in Python.
Compile software from source code.
503⭐274🍴bitbake) - A make-like build tool for embedded Linux.611⭐177🍴buildout) - A build system for creating, assembling and deploying applications from multiple parts.8817⭐854🍴platformio) - A console tool to build code with different development platforms.1932⭐268🍴pybuilder) - A continuous build tool written in pure Python.2344⭐341🍴scons) - A software construction tool.
Libraries for enhancing Python built-in classes.
5706⭐409🍴attrs) - Replacement for__init__,__eq__,__repr__, etc. boilerplate in class definitions.1571⭐63🍴bidict) - Efficient, Pythonic bidirectional map data structures and related functionality..2815⭐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.
1059⭐236🍴feincms) - One of the most advanced Content Management Systems built on Django.2000⭐511🍴indico) - A feature-rich event management system, made @ 🌎 CERN.20045⭐4369🍴wagtail) - A Django content management system.
Libraries for caching data.
543⭐148🍴beaker) - A WSGI middleware for sessions and caching.885⭐161🍴django-cache-machine) - Automatic caching and invalidation for Django models.2259⭐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.2792⭐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 14317⭐ 1412🍴 awesome-static-analysis).
- Code Analysis
4510⭐328🍴code2flow) - Turn your Python and JavaScript code into DOT flowcharts.2059⭐179🍴prospector) - A tool to analyze Python code.4278⭐177🍴vulture) - A tool for finding and analyzing dead Python code.
- Code Linters
3753⭐339🍴flake8) - A wrapper aroundpycodestyle,pyflakesand McCabe.1274⭐51🍴awesome-flake8-extensions)
5636⭐1211🍴pylint) - A fully customizable source code analyzer.45182⭐1697🍴ruff) - An extremely fast Python linter and code formatter.
- Code Formatters
- Static Type Checkers, also see
1929⭐75🍴awesome-python-typing)20131⭐3084🍴mypy) - Check variable types during compile time.7139⭐450🍴pyre-check) - Performant type checking.16568⭐191🍴ty) - An extremely fast Python type checker and language server.4985⭐1955🍴typeshed) - Collection of library stubs for Python, with static types.
- Static Type Annotations Generators
4988⭐189🍴monkeytype) - A system for Python that generates static type annotations by collecting runtime types.5032⭐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.28059⭐1461🍴python-fire) - A library for creating command line interfaces from absolutely any Python object.10211⭐757🍴python-prompt-toolkit) - A library for building powerful interactive command lines.18649⭐826🍴Typer) - Modern CLI framework that uses Python type hints. Built on Click and Pydantic.
- Terminal Rendering
6218⭐232🍴alive-progress) - A new kind of Progress Bar, with real-time throughput, eta and very cool animations.4245⭐261🍴asciimatics) - A package to create full-screen text UIs (from interactive forms to ASCII animations).1914⭐142🍴bashplotlib) - Making basic plots in the terminal.3765⭐267🍴colorama) - Cross-platform colored terminal text.55155⭐1999🍴rich) - Python library for rich text and beautiful formatting in the terminal. Also provides a greatRichHandlerlog handler.30863⭐1419🍴tqdm) - Fast, extensible progress bar for loops and CLI.
Useful CLI-based tools for productivity.
- Productivity Tools
24546⭐2189🍴cookiecutter) - A command-line utility that creates projects from cookiecutters (project templates).3060⭐239🍴copier) - A library and command-line utility for rendering projects templates.3556⭐101🍴doitlive) - A tool for live presentations in the terminal.10796⭐866🍴howdoi) - Instant coding answers via the command line.4688⭐384🍴invoke) - A tool for managing shell-oriented subprocesses and organizing executable Python code into CLI-invokable tasks.5220⭐280🍴pathpicker) - Select files out of bash output.95213⭐3817🍴thefuck) - Correcting your previous console command.4385⭐235🍴tmuxp) - A40862⭐2367🍴tmux) session manager.750⭐32🍴try) - A dead simple CLI to try out python packages - it's never been easier.
- CLI Enhancements
37358⭐3800🍴httpie) - A command line HTTP client, a user-friendly cURL replacement.2723⭐114🍴iredis) - Redis CLI with autocompletion and syntax highlighting.3171⭐91🍴litecli) - SQLite CLI with autocompletion and syntax highlighting.11850⭐680🍴mycli) - MySQL CLI with autocompletion and syntax highlighting.12961⭐579🍴pgcli) - PostgreSQL CLI with autocompletion and syntax highlighting.
Libraries for Computer Vision.
28778⭐3529🍴easyocr) - Ready-to-use OCR with 40+ languages supported.?⭐?🍴kornia) - Open Source Differentiable Computer Vision Library for PyTorch.- 🌎 opencv - Open Source Computer Vision Library.
6297⭐748🍴pytesseract) - A wrapper for Google Tesseract OCR.2146⭐260🍴tesserocr) - Another simple, Pillow-friendly, wrapper around thetesseract-ocrAPI for OCR.
Libraries for storing and parsing configuration options.
336⭐82🍴configobj) - INI file parser with validation.- 🌎 configparser - (Python standard library) INI file parser.
4232⭐310🍴dynaconf) - Dynaconf is a configuration manager with plugins for Django, Flask and FastAPI.10116⭐787🍴hydra) - Hydra is a framework for elegantly configuring complex applications.3008⭐211🍴python-decouple) - Strict separation of settings from code.
7432⭐1688🍴cryptography) - A package designed to expose cryptographic primitives and recipes to Python developers.9654⭐2033🍴paramiko) - The leading native Python SSHv2 protocol library.1175⭐254🍴pynacl) - Python binding to the Networking and Cryptography (NaCl) library.
Libraries for data analysis.
4092⭐720🍴aws-sdk-pandas) - Pandas on AWS.10689⭐800🍴datasette) - An open source multi-tool for exploring and publishing data.?⭐?🍴desbordante) - An open source data profiler for complex pattern discovery.50366⭐3473🍴docling) - Library for converting documents into structured data.1537⭐233🍴optimus) - Agile Data Science Workflows made easy with PySpark.- pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.
57342⭐1545🍴pathway) - Real-time data processing framework for Python with reactive dataflows.37025⭐2562🍴polars) - A fast DataFrame library implemented in Rust with a Python API.
Libraries for validating data. Used for forms in many cases.
3260⭐239🍴cerberus) - A lightweight and extensible data validation library.464⭐145🍴colander) - Validating and deserializing data obtained via XML, JSON, an HTML form post.4906⭐607🍴jsonschema) - An implementation of JSON Schema for Python.26485⭐2398🍴pydantic) - Data validation using Python type hints.2940⭐215🍴schema) - A library for validating Python data structures.2592⭐290🍴schematics) - Data Structure Validation.1848⭐218🍴voluptuous) - A Python data validation library.
Libraries for visualizing data. Also see 34874⭐ 4513🍴 awesome-javascript).
10211⭐833🍴altair) - Declarative statistical visualization library for Python.20298⭐4251🍴bokeh) - Interactive Web Plotting for Python.3682⭐476🍴bqplot) - Interactive Plotting Library for the Jupyter Notebook.1577⭐390🍴cartopy) - A cartographic python library with matplotlib support.41923⭐2708🍴diagrams) - Diagram as Code.22241⭐8175🍴matplotlib) - A Python 2D plotting library.4485⭐245🍴plotnine) - A grammar of graphics for Python based on ggplot2.2744⭐416🍴pygal) - A Python SVG Charts Creator.?⭐?🍴pygraphviz) - Python interface to Graphviz.4277⭐1141🍴pyqtgraph) - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.13688⭐2080🍴seaborn) - Statistical data visualization using Matplotlib.251⭐18🍴UltraPlot) - Matplotlib wrapper for publication-ready scientific figures with minimal code. Includes advanced subplot management, panel layouts, and batteries-included geoscience plotting.3529⭐630🍴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.
1059⭐133🍴pickleDB) - A simple and lightweight key-value store for Python.7420⭐595🍴tinydb) - A tiny, document-oriented database.746⭐100🍴zodb) - A native object database for Python. A key-value and object graph database.
Libraries for connecting and operating databases.
- MySQL - awesome-mysql
2526⭐447🍴mysqlclient) - MySQL connector with Python 3 support 🌎 mysql-python fork).7843⭐1441🍴pymysql) - A pure Python MySQL driver compatible to mysql-python.
- PostgreSQL -
11610⭐918🍴awesome-postgres)2262⭐207🍴psycopg) - The most popular PostgreSQL adapter for Python.
- SQlite -
380⭐41🍴awesome-sqlite)1975⭐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
1294⭐226🍴clickhouse-driver) - Python driver with native interface for ClickHouse.877⭐327🍴pymssql) - A simple database interface to Microsoft SQL Server.
- NoSQL Databases
1423⭐568🍴cassandra-driver) - The Python Driver for Apache Cassandra.212⭐31🍴Django MongoDB Backend) - Official MongoDB database backend for Django.5877⭐1447🍴kafka-python) - The Python client for Apache Kafka.4330⭐1137🍴pymongo) - The official Python client for MongoDB.13430⭐2653🍴redis-py) - The Python client for Redis.2626⭐274🍴Beanie) - An asynchronous Python object-document mapper (ODM) for MongoDB.
Libraries for working with dates and times.
9006⭐704🍴arrow) - A Python library that offers a sensible and human-friendly approach to creating, manipulating, formatting and converting dates, times and timestamps.2590⭐523🍴dateutil) - Extensions to the standard Python 🌎 datetime module.6606⭐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.863⭐51🍴python-hunter) - A flexible code tracing toolkit.
- Profiler
- Others
8342⭐1072🍴django-debug-toolbar) - Display various debug information for Django.981⭐149🍴flask-debugtoolbar) - A port of the django-debug-toolbar to flask.9995⭐213🍴icecream) - Inspect variables, expressions, and program execution with a single, simple function call.553⭐31🍴memory-graph) - Visualize Python data at runtime to debug references, mutability, and aliasing.2201⭐535🍴pyelftools) - Parsing and analyzing ELF files and DWARF debugging information.
Frameworks for Neural Networks and Deep Learning. Also see 27308⭐ 6268🍴 awesome-deep-learning).
34610⭐3357🍴jax) - a library for high-performance numerical computing with automatic differentiation and JIT compilation.63717⭐19676🍴keras) - A high-level neural networks library and capable of running on top of either TensorFlow or Theano.30726⭐3642🍴pytorch-lightning) - Deep learning framework to train, deploy, and ship AI products Lightning fast.96700⭐26533🍴pytorch) - Tensors and Dynamic neural networks in Python with strong GPU acceleration.12546⭐2042🍴stable-baselines3) - PyTorch implementations of Stable Baselines (deep) reinforcement learning algorithms.193381⭐75174🍴tensorflow) - The most popular Deep Learning framework created by Google.
Software and libraries for DevOps.
- Cloud Providers
9655⭐1947🍴boto3) - Python interface to Amazon Web Services.
- Configuration Management
67692⭐24211🍴ansible) - A radically simple IT automation platform.3559⭐1033🍴cloudinit) - A multi-distribution package that handles early initialization of a cloud instance.- 🌎 openstack - Open source software for building private and public clouds.
4658⭐456🍴pyinfra) - A versatile CLI tools and python libraries to automate infrastructure.15034⭐5564🍴saltstack) - Infrastructure automation and management system.
- SSH-style Deployment
- Process Management
8970⭐1264🍴supervisor) - Supervisor process control system for UNIX.
- Monitoring
11029⭐1457🍴psutil) - A cross-platform process and system utilities module.
- Backup
12858⭐811🍴borg) - A deduplicating archiver with compression and encryption.
- Chaos Engineering
1985⭐198🍴chaostoolkit) - A Chaos Engineering toolkit & Orchestration for Developers.
Frameworks and libraries for Distributed Computing.
- Batch Processing
13719⭐1835🍴dask) - A flexible parallel computing library for analytic computing.18619⭐2445🍴luigi) - A module that helps you build complex pipelines of batch jobs.895⭐131🍴mpi4py) - Python bindings for MPI.42652⭐29005🍴PySpark) - 🌎 Apache Spark Python API.?⭐?🍴Ray) - A system for parallel and distributed Python that unifies the machine learning ecosystem.
- Stream Processing
1504⭐221🍴streamparse) - Run Python code against real-time streams of data via Apache Storm.
Libraries to create packaged executables for release distribution.
1525⭐241🍴cx_freeze) - It is a Python tool that converts Python scripts into standalone executables and installers for Windows, macOS, and Linux.14367⭐757🍴Nuitka) - Compiles Python programs into high-performance standalone executables (cross-platform, supports all Python versions).419⭐43🍴py2app) - Freezes Python scripts (Mac OS X).989⭐106🍴py2exe) - Freezes Python scripts (Windows).4902⭐348🍴pyarmor) - A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.12847⭐2014🍴pyinstaller) - Converts Python programs into stand-alone executables (cross-platform).1906⭐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.971⭐72🍴awesome-sphinxdoc)
2453⭐212🍴pdoc) - Epydoc replacement to auto generate API documentation for Python libraries.
Libraries for downloading.
15417⭐2725🍴akshare) - A financial data interface library, built for human beings!58927⭐5735🍴OpenBB) - A financial data platform for analysts, quants and AI agents.4847⭐913🍴s3cmd) - A command line tool for managing Amazon S3 and CloudFront.20828⭐2996🍴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
1933⭐259🍴elpy) - Emacs Python Development Environment.
- Vim
5316⭐368🍴jedi-vim) - Vim bindings for the Jedi auto-completion library for Python.5473⭐768🍴python-mode) - An all in one plugin for turning Vim into a Python IDE.26343⭐2780🍴YouCompleteMe) - Includes6098⭐525🍴Jedi)-based completion engine for Python.
- Visual Studio
2562⭐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
3437⭐454🍴modoboa) - A mail hosting and management platform including a modern Web UI.
- Clients
- Others
Libraries for Python version and virtual environment management.
44073⭐3235🍴pyenv) - Simple Python version management.5004⭐1079🍴virtualenv) - A tool to create isolated Python environments.
Libraries for file manipulation.
- 🌎 mimetypes - (Python standard library) Map filenames to MIME types.
1122⭐150🍴path.py) - A module wrapper for 🌎 os.path.- 🌎 pathlib - (Python standard library) An cross-platform, object-oriented path library.
2875⭐302🍴python-magic) - A Python interface to the libmagic file type identification library.7228⭐738🍴watchdog) - API and shell utilities to monitor file system events.2392⭐131🍴watchfiles) - Simple, modern and fast file watching and code reload in python.
Functional Programming with Python.
4298⭐134🍴coconut) - A variant of Python built for simple, elegant, Pythonic functional programming.?⭐?🍴cytoolz) - Cython implementation ofToolz: High performance functional utilities.3494⭐150🍴funcy) - A fancy and practical functional tools.4034⭐311🍴more-itertools) - More routines for operating on iterables, beyonditertools.4202⭐143🍴returns) - A set of type-safe monads, transformers, and composition utilities.5108⭐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.
13073⭐1153🍴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. Run on Windows, macOS, Linux, Android, iOS, and the Web.
3342⭐260🍴Flexx) - Flexx is a pure Python toolkit for creating GUI's, that uses web technology for its rendering.22023⭐1044🍴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.
15123⭐897🍴NiceGui) - It is great for micro web apps, dashboards, robotics projects, smart home solutions and similar use cases. You can also use it in development, for example when tweaking/configuring a machine learning algorithm or tuning motor controllers.2147⭐326🍴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.
5285⭐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⭐147🍴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 - cocos2d is 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.
1514⭐300🍴django-countries) - A Django app that provides a country field for models and forms.- 🌎 geodjango - A world-class geographic web framework.
984⭐126🍴geojson) - Python bindings and utilities for GeoJSON.5025⭐996🍴geopandas) - Python tools for geographic data (GeoSeries/GeoDataFrame) built on pandas.4757⭐661🍴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.
1216⭐302🍴html5lib) - A standards-compliant library for parsing and serializing HTML documents and fragments.?⭐?🍴JustHTML) - A pure Python HTML5 parser that just works. No C extensions to compile. No system dependencies to install. No complex API to learn.- lxml - A very fast, easy-to-use and versatile library for handling HTML and XML.
685⭐170🍴markupsafe) - Implements a XML/HTML/XHTML Markup safe string for Python.2378⭐184🍴pyquery) - A jQuery-like library for parsing HTML.631⭐87🍴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.
5712⭐466🍴xmltodict) - Working with XML feel like you are working with JSON.
Libraries for working with HTTP.
14913⭐1007🍴httpx) - A next generation HTTP client for Python.53651⭐9692🍴requests) - HTTP Requests for Humans.606⭐143🍴treq) - Python requests like API built on top of Twisted's HTTP client.3999⭐1245🍴urllib3) - A HTTP library with thread-safe connection pooling, file post support, sanity friendly.
Libraries for programming with hardware.
2307⭐339🍴bleak) - A cross platform Bluetooth Low Energy Client for Python using asyncio.963⭐141🍴mouse) - Hook and simulate global mouse events on Windows and Linux.2079⭐280🍴pynput) - A library to control and monitor input devices.11991⭐2188🍴scapy) - A brilliant packet manipulation library.
Libraries for manipulating images.
13329⭐2387🍴pillow) - Pillow is the friendly PIL fork.- pymatting - A library for alpha matting.
643⭐135🍴python-barcode) - Create barcodes in Python with no extra dependencies.4833⭐726🍴python-qrcode) - A pure Python QR Code generator.768⭐55🍴pyvips) - A fast image processing library with low memory needs.1222⭐152🍴quads) - Computer art based on quadtrees.- scikit-image - A Python library for (scientific) image processing.
10441⭐862🍴thumbor) - A smart imaging service. It enables on-demand crop, re-sizing and flipping of images.1477⭐199🍴wand) - Python bindings for MagickWand, C API for ImageMagick.
Implementations of Python.
392⭐35🍴clpython) - Implementation of the Python programming language written in Common Lisp.71113⭐33916🍴cpython) - Default, most widely used implementation of the Python programming language written in C.10571⭐1608🍴cython) - Optimizing Static Compiler for Python.2722⭐307🍴ironpython) - Implementation of the Python programming language written in C#.21351⭐8655🍴micropython) - A lean and efficient Python programming language implementation.10857⭐1223🍴numba) - Python JIT compiler to LLVM aimed at scientific Python.2046⭐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).
2763⭐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.
4521⭐452🍴awesome-jupyter)
18503⭐870🍴marimo) - Transform data and train models, feels like a next-gen notebook, stored as Git-friendly Python.5394⭐290🍴ptpython) - Advanced Python REPL built on top of the10211⭐757🍴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.
849⭐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.21352⭐2083🍴Prefect) - A modern workflow orchestration framework that makes it easy to build, schedule and monitor robust data pipelines.12226⭐984🍴schedule) - Python job scheduling for humans.1847⭐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.
23452⭐765🍴loguru) - Library which aims to bring enjoyable logging in Python.2127⭐574🍴sentry-python) - Sentry SDK for Python.- 🌎 structlog - Structured logging made easy.
Libraries for Machine Learning. Also see 71361⭐ 15245🍴 awesome-machine-learning).
32494⭐6685🍴diffusers) - A library that provides pretrained diffusion models for generating and editing images, audio, and video.36958⭐8713🍴gym) - A toolkit for developing and comparing reinforcement learning algorithms.2179⭐333🍴Feature-engine) - sklearn compatible API with the widest toolset for feature engineering and selection.7482⭐2029🍴H2O) - Open Source Fast Scalable Machine Learning Platform.1654⭐454🍴Metrics) - Machine learning evaluation metrics.38268⭐6079🍴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.5556⭐758🍴PraisonAI) - Production-ready Multi-AI Agents framework with self-reflection, 100+ LLM support, MCP integration, and agentic workflows.14325⭐1548🍴pydantic-ai) - A Python agent framework for building generative AI applications with structured schemas.71621⭐7853🍴RAGFlow) - An open-source RAG engine for document understanding and question answering with LLMs.- scikit-learn - The most popular Python library for Machine Learning.
- Spark ML - Apache Spark's scalable Machine Learning library.
155280⭐31768🍴Transformers) - A framework that lets you easily use pretrained transformer models for NLP, vision, and audio tasks.27867⭐8832🍴xgboost) - A scalable, portable, and distributed gradient boosting library.
Python programming on Microsoft Windows.
5378⭐770🍴PythonNet) - Python Integration with the .NET Common Language Runtime (CLR).5510⭐849🍴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.
2016⭐188🍴blinker) - A fast Python in-process signal/event dispatching system.6832⭐376🍴boltons) - A set of pure-Python utilities.3098⭐229🍴itsdangerous) - Various helpers to pass trusted data to untrusted environments.1138⭐143🍴pluginbase) - A simple but flexible plugin system for Python.- tryton - A general-purpose business framework.
Libraries for working with human languages.
- General
16323⭐4415🍴gensim) - Topic Modeling for Humans.2450⭐324🍴langid.py) - Stand-alone language identification system.- nltk - A leading platform for building Python programs to work with human language data.
8857⭐1579🍴pattern) - A web mining module.2359⭐342🍴polyglot) - Natural language pipeline supporting hundreds of languages.- 🌎 spacy - A library for industrial-strength natural language processing in Python and Cython.
7714⭐932🍴Stanza) - The Stanford NLP Group's official Python library, supporting 60+ languages.
- Chinese
78501⭐15126🍴funNLP) - A collection of tools and datasets for Chinese NLP.34701⭐6725🍴jieba) - The most popular Chinese text segmentation library.6697⭐986🍴pkuseg-python) - A toolkit for Chinese word segmentation in various domains.6597⭐1365🍴snownlp) - A library for processing Chinese text.
Tools and libraries for Virtual Networking and SDN (Software Defined Networking).
5747⭐1794🍴mininet) - A popular network emulator and API written in Python.2419⭐578🍴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.
3022⭐155🍴awesome-sqlalchemy)
4847⭐297🍴dataset) - Store Python dicts in a database - works with SQLite, MySQL, and PostgreSQL.11903⭐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
4351⭐1234🍴mongoengine) - A Python Object-Document-Mapper for working with MongoDB.1145⭐92🍴ODMantic) - Sync and Async ODM for MongoDB built on top of Pydantic for model definition and validation.2640⭐433🍴PynamoDB) - A Pythonic interface for 🌎 Amazon DynamoDB.
Libraries for package and dependency management.
- 🌎 pip - The package installer for Python.
7985⭐639🍴pip-tools) - A set of tools to keep your pinned Python dependencies fresh.
?⭐?🍴conda) - Cross-platform, Python-agnostic binary package manager.7094⭐360🍴hatch) - Modern, extensible Python project management.34169⭐2393🍴poetry) - Python dependency management and packaging made easy.77159⭐2455🍴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).1122⭐140🍴devpi) - PyPI server and packaging/testing/release tool.3928⭐1098🍴warehouse) - Next generation Python Package Repository (PyPI).
Frameworks and tools for penetration testing.
11802⭐2102🍴fsociety) - A Penetration testing framework.14371⭐3285🍴setoolkit) - A toolkit for social engineering.36321⭐6161🍴sqlmap) - Automatic SQL injection and database takeover tool.
Libraries that allow or deny users access to data or functionality.
3871⭐582🍴django-guardian) - Implementation of per object permissions for Django 1.2+1961⭐150🍴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.
1747⭐89🍴delegator.py) - 🌎 Subprocesses for Humans 2.0.- 🌎 sarge - Yet another wrapper for subprocess.
7227⭐503🍴sh) - A full-fledged subprocess replacement for Python.
Libraries for building recommender systems.
14131⭐1218🍴annoy) - Approximate Nearest Neighbors in C++/Python optimized for memory usage.1091⭐205🍴fastFM) - A library for Factorization Machines.3763⭐629🍴implicit) - A fast Python implementation of collaborative filtering for implicit datasets.5059⭐725🍴lightfm) - A Python implementation of a number of popular recommendation algorithms.3045⭐424🍴spotlight) - Deep recommender models using PyTorch.6755⭐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.
2162⭐176🍴Rope) - Rope is a python refactoring library.
Libraries for building RESTful APIs.
- Django
29808⭐7052🍴django-rest-framework) - A powerful and flexible toolkit to build web APIs.3960⭐1163🍴django-tastypie) - Creating delicious APIs for Django apps.
- Flask
6744⭐739🍴eve) - REST API framework powered by Flask, MongoDB and good intentions.1467⭐193🍴flask-api) - Browsable Web APIs for Flask.6932⭐1045🍴flask-restful) - Quickly building REST APIs for Flask.
- Pyramid
390⭐151🍴cornice) - A RESTful framework for Pyramid.
- Framework agnostic
9775⭐973🍴falcon) - A high-performance framework for building cloud APIs and web app backends.94184⭐8535🍴fastapi) - A modern, fast, web framework for building APIs with Python 3.6+ based on standard Python type hints.6906⭐390🍴hug) - A Python 3 framework for cleanly exposing APIs.2044⭐219🍴sandman2) - Automated REST APIs for existing database-driven systems.18615⭐1583🍴sanic) - A Python 3.6+ web server and web framework that's written to go fast.
Libraries for robotics.
27727⭐7110🍴PythonRobotics) - This is a compilation of various robotics algorithms with visualizations.
RPC-compatible servers.
1686⭐250🍴RPyC) (Remote Python Call) - A transparent and symmetric RPC library for Python3235⭐380🍴zeroRPC) - zerorpc is a flexible RPC implementation based on ZeroMQ and MessagePack.
Libraries for scientific computing. Also see 348⭐ 47🍴 Python-for-Scientists).
- astropy - A community Python library for Astronomy.
1024⭐355🍴bcbio-nextgen) - Providing best-practice pipelines for fully automated high throughput sequencing analysis.644⭐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.
2270⭐257🍴Karate Club) - Unsupervised machine learning toolbox for graph structured data.36242⭐2596🍴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.
9448⭐2190🍴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.
4356⭐606🍴shapely) - Manipulation and analysis of geometric objects in the Cartesian plane.- 🌎 SimPy - A process-based discrete-event simulation framework.
11200⭐3317🍴statsmodels) - Statistical modeling and econometrics in Python.14327⭐5009🍴SymPy) - A Python library for symbolic mathematics.19344⭐4938🍴Zipline) - A Pythonic algorithmic trading library.
Libraries and software for indexing and performing search queries on data.
3792⭐1308🍴django-haystack) - Modular search for Django.3881⭐804🍴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.
7226⭐652🍴marshmallow) - A lightweight library for converting complex objects to and from simple Python datatypes.7804⭐278🍴orjson) - Fast, correct JSON library.756⭐63🍴pysimdjson) - A Python bindings for23124⭐1208🍴simdjson).530⭐53🍴python-rapidjson) - A Python wrapper around14957⭐3644🍴RapidJSON).290⭐23🍴toonify) - A compact, human-readable serialization format that reduces LLM token usage by 30-60% compared to JSON.4473⭐375🍴ultrajson) - A fast JSON decoder and encoder written in C with Python bindings.
Frameworks for developing serverless Python code.
1521⭐226🍴python-lambda) - A toolkit for developing and deploying Python code in AWS Lambda.3669⭐380🍴Zappa) - A tool for deploying WSGI applications on AWS Lambda and API Gateway.
Shells based on Python.
?⭐?🍴xonsh) - A Python-powered shell. Full-featured and cross-platform.
Libraries for parsing and manipulating specific text formats.
- General
4750⭐593🍴tablib) - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
- Office
2441⭐425🍴docxtpl) - Editing a docx document by jinja2 template- 🌎 openpyxl - A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
1278⭐166🍴pyexcel) - Providing one API for reading, manipulating and writing csv, ods, xls, xlsx and xlsm files.5395⭐1258🍴python-docx) - Reads, queries and modifies Microsoft Word 2007/2008 docx files.3147⭐662🍴python-pptx) - Python library for creating and updating PowerPoint (.pptx) files.3894⭐662🍴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
6856⭐1018🍴pdfminer.six) - Pdfminer.six is a community maintained fork of the original PDFMiner.2605⭐214🍴pikepdf) - A powerful library for reading and editing PDF files, based on qpdf.9746⭐1537🍴PyPDF2) - A library capable of splitting, merging and transforming PDF pages.- 🌎 ReportLab - Allowing Rapid creation of rich PDF documents.
- Markdown
2949⭐270🍴Mistune) - Fastest and full featured pure Python parsers of Markdown.4138⭐897🍴Python-Markdown) - A Python implementation of John Gruber’s Markdown.
- YAML
- PyYAML - YAML implementations for Python.
- CSV
6321⭐673🍴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.
3920⭐317🍴lektor) - An easy to use static CMS and blog engine.1877⭐303🍴makesite) - Simple, lightweight, and magic-free static site/blog generator (< 130 lines).?⭐?🍴mkdocs) - Markdown friendly documentation generator.2713⭐468🍴nikola) - A static website and blog generator.13188⭐1828🍴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.
5083⭐355🍴dramatiq) - A fast and reliable background task processing library for Python 3.5881⭐393🍴huey) - Little multi-threaded task queue.898⭐115🍴mrq) - A distributed worker task queue in Python using Redis & gevent.10552⭐1457🍴rq) - Simple job queues for Python.
Libraries and tools for templating and lexing.
- 🌎 Genshi - Python templating toolkit for generation of web-aware output.
11392⭐1691🍴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
8393⭐629🍴hypothesis) - Hypothesis is an advanced Quickcheck style property based testing library.819⭐133🍴nose2) - The successor tonose, based on `unittest2.- 🌎 pytest - A mature full-featured Python testing tool.
11355⭐2517🍴Robot Framework) - A generic test automation framework.- 🌎 unittest - (Python standard library) Unit testing framework.
- Test Runners
- GUI / Web Testing
27345⭐3160🍴locust) - Scalable user load testing tool written in Python.12221⭐1390🍴PyAutoGUI) - PyAutoGUI is a cross-platform GUI automation Python module for human beings.2964⭐195🍴Schemathesis) - A tool for automatic property-based testing of web applications built with Open API / Swagger specifications.- 🌎 Selenium - Python bindings for 🌎 Selenium 🌎 WebDriver.
2765⭐512🍴splinter) - Open source tool for testing web applications.
- Mock
- 🌎 doublex - Powerful test doubles framework for Python.
4482⭐289🍴freezegun) - Travel through time by mocking the datetime module.471⭐56🍴httmock) - A mocking library for requests for Python 2.6+ and 3.2+.2220⭐278🍴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.4313⭐361🍴responses) - A utility library for mocking out the requests Python library.2924⭐422🍴VCR.py) - Record and replay HTTP interactions on your tests.
- Object Factories
3758⭐410🍴factory_boy) - A test fixtures replacement for Python.954⭐95🍴mixer) - Another fixtures replacement. Supports Django, Flask, SQLAlchemy, Peewee and etc.1385⭐107🍴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
2315⭐266🍴chardet) - Python 2/3 compatible character encoding detector.- 🌎 difflib - (Python standard library) Helpers for computing deltas.
4009⭐124🍴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.1531⭐152🍴pyfiglet) - An implementation of figlet written in Python.5240⭐628🍴pypinyin) - Convert Chinese hanzi (漢字) to pinyin (拼音).3510⭐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.1583⭐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.
2440⭐299🍴pyparsing) - A general purpose framework for generating parsers.699⭐106🍴python-nameparser) - Parsing human names into their individual components.3698⭐436🍴python-phonenumbers) - Parsing, formatting, storing and validating international phone numbers.1510⭐196🍴python-user-agents) - Browser user agent parser.3979⭐720🍴sqlparse) - A non-validating SQL parser.
Libraries for parsing URLs.
2793⭐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.1406⭐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.
152⭐23🍴scikit-video) - Video processing routines for SciPy.3669⭐277🍴vidgear) - Most Powerful multi-threaded Video Processing framework.
Tools for managing, compressing and minifying website assets.
2872⭐609🍴django-compressor) - Compresses linked and inline JavaScript or CSS into a single cached file.1545⭐374🍴django-pipeline) - An asset packaging library for Django.2922⭐887🍴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.936⭐260🍴webassets) - Bundles, optimizes, and manages unique cache-busting URLs for static resources.
Libraries for extracting web contents.
2117⭐293🍴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.14939⭐2132🍴newspaper) - News extraction, article extraction and content curation in Python.2880⭐356🍴python-readability) - Fast Python port of arc90's readability tool.13878⭐999🍴requests-html) - Pythonic HTML Parsing for Humans.3659⭐541🍴sumy) - A module for automatic summarization of text documents and HTML pages.4420⭐658🍴textract) - Extract text from any document, Word, PowerPoint, PDFs, etc.3548⭐235🍴toapi) - Every web site provides APIs.
Libraries to automate web scraping.
2267⭐352🍴feedparser) - Universal feed parser.2445⭐280🍴grab) - Site scraping framework.4840⭐385🍴mechanicalsoup) - A Python library for automating interaction with websites.59477⭐11214🍴scrapy) - A fast high-level screen scraping and web crawling framework.
Traditional full stack web frameworks. Also see 278694⭐ 27069🍴 RESTful API).
- Synchronous
86491⭐33505🍴django) - The most popular web framework in Python.1882⭐281🍴awesome-django)10916⭐1441🍴awesome-django)
71058⭐16673🍴flask) - A microframework for Python.12672⭐1590🍴awesome-flask)
- 🌎 pyramid - A small, fast, down-to-earth, open source Python web framework.
570⭐56🍴awesome-pyramid)
6805⭐292🍴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
Libraries for working with WebSocket.
2534⭐771🍴autobahn-python) - WebSocket & WAMP for Python on Twisted and 🌎 asyncio.6325⭐824🍴channels) - Developer-friendly asynchrony for Django.5617⭐581🍴websockets) - A library for building WebSocket servers and clients with a focus on correctness and simplicity.
WSGI-compatible web servers.
10400⭐1810🍴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.
1564⭐181🍴waitress) - Multi-threaded, powers Pyramid.6828⭐1753🍴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 me 🌎 @VintaChen on Twitter or open an issue on GitHub.
278694⭐ 27069🍴 vinta/awesome-python)