awesome-python
A curated list of awesome Python frameworks, libraries, software and resources
https://github.com/rdp-studio/awesome-python
Last synced: 12 days ago
JSON representation
-
Admin Panels
- django-grappelli - A jazzy skin for the Django Admin-Interface.
- django-suit - Alternative Django Admin-Interface (free only for Non-commercial use).
- ajenti - The admin panel your servers deserve.
- django-jet - Modern responsive template for the Django admin interface with improved functionality.
- django-xadmin - Drop-in replacement of Django admin comes with lots of goodies.
- flower - Real-time monitor and web admin for Celery.
- jet-bridge - Admin panel framework for any application with nice UI (ex Jet Django)
- wooey - A Django app which creates automatic web UIs for Python scripts.
- flask-admin - Simple and extensible administrative interface framework for Flask.
-
Algorithms and Design Patterns
- awesome-algorithms
- algorithms - Minimal examples of data structures and algorithms.
- python-ds - A collection of data structure and algorithms for coding interviews.
- sortedcontainers - Fast and pure-Python implementation of sorted collections.
- TheAlgorithms - All Algorithms implemented in Python.
- PyPattyrn - A simple yet effective library for implementing common design patterns.
- python-patterns - A collection of design patterns in Python.
- transitions - A lightweight, object-oriented finite state machine implementation.
-
ASGI Servers
-
Asynchronous Programming
- asyncio - (Python standard library) Asynchronous I/O, event loop, coroutines and tasks.
- awesome-asyncio
- trio - A friendly library for async concurrency and I/O.
- uvloop - Ultra fast asyncio event loop.
-
Audio
- audioread - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.
- dejavu - Audio fingerprinting and recognition.
- kapre - Keras Audio Preprocessors
- librosa - Python library for audio and music analysis
- matchering - A library for automated reference audio mastering.
- mingus - An advanced music theory and notation package with MIDI file and playback support.
- pyAudioAnalysis - Audio feature extraction, classification, segmentation and applications.
- pydub - Manipulate audio with a simple and easy high level interface.
- TimeSide - Open web audio processing framework.
- beets - A music library manager and [MusicBrainz](https://musicbrainz.org/) tagger.
- eyeD3 - A tool for working with audio files, specifically MP3 files containing ID3 metadata.
- mutagen - A Python module to handle audio metadata.
- tinytag - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
-
Authentication
- authlib - JavaScript Object Signing and Encryption draft implementation.
- django-allauth - Authentication app for Django that "just works."
- python-oauth2 - A fully tested, abstract interface to creating OAuth clients and servers.
- python-social-auth - An easy-to-setup social authentication mechanism.
- pyjwt - JSON Web Token implementation in Python.
- python-jwt - A module for generating and verifying JSON Web Tokens.
- python-jose - A JOSE implementation in Python.
- django-oauth-toolkit - OAuth 2 goodies for Django.
-
Books
-
Build Tools
- buildout - A build system for creating, assembling and deploying applications from multiple parts.
- buildout - A build system for creating, assembling and deploying applications from multiple parts.
- PlatformIO - A console tool to build code with different development platforms.
- pybuilder - A continuous build tool written in pure Python.
- SCons - A software construction tool.
- BitBake - A make-like build tool for embedded Linux.
-
Built-in Classes Enhancement
- dataclasses - (Python standard library) Data classes.
- attrs - Replacement for `__init__`, `__eq__`, `__repr__`, etc. boilerplate in class definitions.
- bidict - Efficient, Pythonic bidirectional map data structures and related functionality..
- Box - Python dictionaries with advanced dot notation access.
- DottedDict - A library that provides a method of accessing lists and dicts with a dotted path notation.
-
Caching
- HermesCache - Python caching library with tag-based invalidation and dogpile effect prevention.
- beaker - A WSGI middleware for sessions and caching.
- django-cache-machine - Automatic caching and invalidation for Django models.
- django-cacheops - A slick ORM cache with automatic granular event-driven invalidation.
- pylibmc - A Python wrapper around the [libmemcached](https://libmemcached.org/libMemcached.html) interface.
- HermesCache - Python caching library with tag-based invalidation and dogpile effect prevention.
-
ChatOps Tools
- errbot - The easiest and most popular chatbot to implement ChatOps.
-
CMS
- django-cms - An Open source enterprise CMS based on the Django.
- plone - A CMS built on top of the open source application server Zope.
- feincms - One of the most advanced Content Management Systems built on Django.
- indico - A feature-rich event management system, made @ [CERN](https://en.wikipedia.org/wiki/CERN).
- Kotti - A high-level, Pythonic web application framework built on Pyramid.
- mezzanine - A powerful, consistent, and flexible content management platform.
- wagtail - A Django content management system.
- quokka - Flexible, extensible, small CMS powered by Flask and MongoDB.
-
Code Analysis
- pylint - A fully customizable source code analyzer.
- awesome-python-typing
- awesome-static-analysis
- code2flow - Turn your Python and JavaScript code into DOT flowcharts.
- prospector - A tool to analyse Python code.
- pycallgraph - A library that visualises the flow (call graph) of your Python application.
- vulture - A tool for finding and analysing dead Python code.
- flake8 - A wrapper around `pycodestyle`, `pyflakes` and McCabe.
- awesome-flake8-extensions
- pylama - A code audit tool for Python and JavaScript.
- wemake-python-styleguide - The strictest and most opinionated python linter ever.
- black - The uncompromising Python code formatter.
- yapf - Yet another Python code formatter from Google.
- pyre-check - Performant type checking.
- typeshed - Collection of library stubs for Python, with static types.
- MonkeyType - A system for Python that generates static type annotations by collecting runtime types.
- pyannotate - Auto-generate PEP-484 annotations.
- pytype - Pytype checks and infers types for Python code - without requiring type annotations.
- coala - Language independent and easily extendable code analysis application.
- mypy - Check variable types during compile time.
- isort - A Python utility / library to sort imports.
-
Command-line Interface Development
- docopt - Pythonic command line arguments parser.
- colorama - Cross-platform colored terminal text.
- cliff - A framework for creating command-line programs with multi-level commands.
- docopt - Pythonic command line arguments parser.
- python-fire - A library for creating command line interfaces from absolutely any Python object.
- alive-progress - A new kind of Progress Bar, with real-time throughput, eta and very cool animations.
- asciimatics - A package to create full-screen text UIs (from interactive forms to ASCII animations).
- bashplotlib - Making basic plots in the terminal.
- colorama - Cross-platform colored terminal text.
- tqdm - Fast, extensible progress bar for loops and CLI.
- cement - CLI Application Framework for Python.
- python-prompt-toolkit - A library for building powerful interactive command lines.
- rich - Python library for rich text and beautiful formatting in the terminal. Also provides a great `RichHandler` log handler.
-
Command-line Tools
- doitlive - A tool for live presentations in the terminal.
- howdoi - Instant coding answers via the command line.
- Invoke - A tool for managing shell-oriented subprocesses and organizing executable Python code into CLI-invokable tasks.
- PathPicker - Select files out of bash output.
- percol - Adds flavor of interactive selection to the traditional pipe concept on UNIX.
- thefuck - Correcting your previous console command.
- try - A dead simple CLI to try out python packages - it's never been easier.
- httpie - A command line HTTP client, a user-friendly cURL replacement.
- iredis - Redis CLI with autocompletion and syntax highlighting.
- kube-shell - An integrated shell for working with the Kubernetes CLI.
- litecli - SQLite CLI with autocompletion and syntax highlighting.
- mycli - MySQL CLI with autocompletion and syntax highlighting.
- pgcli - PostgreSQL CLI with autocompletion and syntax highlighting.
- saws - A Supercharged [aws-cli](https://github.com/aws/aws-cli).
- tmuxp - A [tmux](https://github.com/tmux/tmux) session manager.
- cookiecutter - A command-line utility that creates projects from cookiecutters (project templates).
-
Compatibility
-
Computer Vision
- OpenCV - Open Source Computer Vision Library.
- EasyOCR - Ready-to-use OCR with 40+ languages supported.
- Face Recognition - Simple facial recognition library.
- pytesseract - A wrapper for [Google Tesseract OCR](https://github.com/tesseract-ocr).
- SimpleCV - An open source framework for building computer vision applications.
- tesserocr - Another simple, Pillow-friendly, wrapper around the `tesseract-ocr` API for OCR.
- Kornia - Open Source Differentiable Computer Vision Library for PyTorch.
-
Concurrency and Parallelism
- concurrent.futures - (Python standard library) A high-level interface for asynchronously executing callables.
- eventlet - Asynchronous framework with WSGI support.
- gevent - A coroutine-based Python networking library that uses [greenlet](https://github.com/python-greenlet/greenlet).
- multiprocessing - (Python standard library) Process-based parallelism.
- eventlet - Asynchronous framework with WSGI support.
- scoop - Scalable Concurrent Operations in Python.
-
Configuration
- configparser - (Python standard library) INI file parser.
- profig - Config from multiple formats with value conversion.
- configobj - INI file parser with validation.
- hydra - Hydra is a framework for elegantly configuring complex applications.
- python-decouple - Strict separation of settings from code.
-
Cryptography
- cryptography - A package designed to expose cryptographic primitives and recipes to Python developers.
- passlib - Secure password storage/hashing library, very high level.
- paramiko - The leading native Python SSHv2 protocol library.
- pynacl - Python binding to the Networking and Cryptography (NaCl) library.
-
Data Analysis
- Pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.
- AWS Data Wrangler - Pandas on AWS.
- Blaze - NumPy and Pandas interface to Big Data.
- Open Mining - Business Intelligence (BI) in Pandas interface.
- Optimus - Agile Data Science Workflows made easy with PySpark.
- Orange - Data mining, data visualization, analysis and machine learning through visual programming or scripts.
-
Database
-
Database Drivers
- awesome-postgres
- psycopg2 - The most popular PostgreSQL adapter for Python.
- pymssql - A simple database interface to Microsoft SQL Server.
- py2neo - A client library and toolkit for working with Neo4j.
- awesome-mysql
- PyMySQL - A pure Python MySQL driver compatible to mysql-python.
- queries - A wrapper of the psycopg2 library for interacting with PostgreSQL.
- SuperSQLite - A supercharged SQLite library built on top of [apsw](https://github.com/rogerbinns/apsw).
- cassandra-driver - The Python Driver for Apache Cassandra.
- kafka-python - The Python client for Apache Kafka.
- pymongo - The official Python client for MongoDB.
- motor - The async Python driver for MongoDB.
- mysqlclient - MySQL connector with Python 3 support ([mysql-python](https://sourceforge.net/projects/mysql-python/) fork).
- py2neo - A client library and toolkit for working with Neo4j.
- happybase - A developer-friendly library for Apache HBase.
- redis-py - The Python client for Redis.
-
Data Validation
- colander - Validating and deserializing data obtained via XML, JSON, an HTML form post.
- Cerberus - A lightweight and extensible data validation library.
- jsonschema - An implementation of [JSON Schema](http://json-schema.org/) for Python.
- schema - A library for validating Python data structures.
- Schematics - Data Structure Validation.
- valideer - Lightweight extensible data validation and adaptation library.
- voluptuous - A Python data validation library.
-
Data Visualization
- awesome-javascript
- PyGraphviz - Python interface to [Graphviz](http://www.graphviz.org/).
- Altair - Declarative statistical visualization library for Python.
- Bokeh - Interactive Web Plotting for Python.
- Cartopy - A cartographic python library with matplotlib support
- awesome-dash
- diagrams - Diagram as Code.
- plotnine - A grammar of graphics for Python based on ggplot2.
- PyGraphviz - Python interface to [Graphviz](http://www.graphviz.org/).
- Seaborn - Statistical data visualization using Matplotlib.
- VisPy - High-performance scientific visualization based on OpenGL.
- Matplotlib - A Python 2D plotting library.
- PyQtGraph - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.
- bqplot - Interactive Plotting Library for the Jupyter Notebook
-
Date and Time
- Arrow - A Python library that offers a sensible and human-friendly approach to creating, manipulating, formatting and converting dates, times and timestamps.
- pytz - World timezone definitions, modern and historical. Brings the [tz database](https://en.wikipedia.org/wiki/Tz_database) into Python.
- Chronyk - A Python 3 library for parsing human-written times and dates.
- dateutil - Extensions to the standard Python [datetime](https://docs.python.org/3/library/datetime.html) module.
- delorean - A library for clearing up the inconvenient truths that arise dealing with datetimes.
- maya - Datetimes for Humans.
- moment - A Python library for dealing with dates/times. Inspired by [Moment.js](http://momentjs.com/).
Programming Languages
Categories
Testing
28
Text Processing
22
Code Analysis
21
Debugging Tools
19
Specific Formats Processing
17
Science
17
GUI Development
17
Command-line Tools
16
Database Drivers
16
Image Processing
15
Data Visualization
14
Audio
13
Command-line Interface Development
13
RESTful API
13
DevOps Tools
13
Natural Language Processing
13
ORM
13
Implementations
12
Editor Plugins and IDEs
10
HTML Manipulation
10
Date and Time
10
Admin Panels
9
Web Content Extracting
9
Web Frameworks
9
Websites
9
Machine Learning
9
Hardware
8
Authentication
8
E-commerce
8
CMS
8
Third-party APIs
8
Recommender Systems
8
Job Scheduler
8
Algorithms and Design Patterns
8
Deep Learning
8
Distributed Computing
7
Web Crawling
7
Game Development
7
Web Asset Management
7
Files
7
Functional Programming
7
Data Validation
7
Computer Vision
7
Data Analysis
6
Caching
6
Email
6
Miscellaneous
6
Geolocation
6
HTTP Clients
6
Build Tools
6
Microsoft Windows
6
Concurrency and Parallelism
6
Search
6
Built-in Classes Enhancement
5
Distribution
5
Configuration
5
Static Site Generator
5
Foreign Function Interface
5
Podcasts
5
WSGI Servers
5
Logging
5
Package Management
5
Forms
5
Package Repositories
4
Task Queues
4
Serialization
4
Downloader
4
URL Manipulation
4
Newsletters
4
Asynchronous Programming
4
Cryptography
4
Documentation
4
Penetration Testing
3
Robotics
3
WebSocket
3
Video
3
ASGI Servers
3
Interactive Interpreter
3
Network Virtualization
3
Compatibility
3
Database
3
Processes
3
Environment Management
2
Template Engine
2
RPC Servers
2
Refactoring
2
Serverless Frameworks
2
GraphQL
2
Internationalization
2
News Feed
2
Permissions
2
ChatOps Tools
1
Tagging
1
Books
1
Sub Categories
Keywords
python
248
machine-learning
21
python3
19
django
17
http
16
testing
13
deep-learning
11
database
11
awesome-list
11
awesome
11
cli
9
data-science
8
flask
8
python-library
8
web
7
pypi
7
library
6
json
6
audio
6
redis
6
debugging
6
music
6
framework
6
asyncio
6
linux
6
api
6
requests
5
python-3
5
automation
5
pandas
5
rest
5
pytorch
5
sqlalchemy
5
orm
5
recommender-system
5
terminal
5
administration
4
image-processing
4
code-quality
4
mongodb
4
linter
4
pallets
4
email
4
mock
4
javascript
4
http-server
4
neural-network
4
python2
4
network
4
crawler
4