awesome-python
A curated list of awesome Python frameworks, libraries, software and resources
https://github.com/rdp-studio/awesome-python
Last synced: 1 day 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
GUI Development
17
Science
17
Command-line Tools
16
Database Drivers
16
Image Processing
15
Data Visualization
14
Natural Language Processing
13
Command-line Interface Development
13
ORM
13
DevOps Tools
13
RESTful API
13
Audio
13
Implementations
12
Date and Time
10
HTML Manipulation
10
Editor Plugins and IDEs
10
Admin Panels
9
Web Frameworks
9
Job Scheduler
9
Game Development
9
Websites
9
Machine Learning
9
Web Content Extracting
9
E-commerce
8
Authentication
8
Recommender Systems
8
Algorithms and Design Patterns
8
Hardware
8
CMS
8
Deep Learning
8
Third-party APIs
8
Web Crawling
7
Distributed Computing
7
Computer Vision
7
Functional Programming
7
Data Validation
7
Files
7
Web Asset Management
7
Search
6
Distribution
6
Caching
6
Miscellaneous
6
HTTP Clients
6
Build Tools
6
Data Analysis
6
Microsoft Windows
6
Concurrency and Parallelism
6
Geolocation
6
Podcasts
6
Email
6
Built-in Classes Enhancement
5
Logging
5
Static Site Generator
5
Configuration
5
WSGI Servers
5
Package Management
5
Foreign Function Interface
5
Forms
5
Newsletters
4
Cryptography
4
Documentation
4
Asynchronous Programming
4
URL Manipulation
4
Task Queues
4
Package Repositories
4
Downloader
4
Serialization
4
Penetration Testing
3
Robotics
3
ASGI Servers
3
WebSocket
3
Database
3
Processes
3
Interactive Interpreter
3
Compatibility
3
Video
3
Network Virtualization
3
RPC Servers
2
GraphQL
2
Internationalization
2
News Feed
2
Template Engine
2
Environment Management
2
Refactoring
2
Permissions
2
Serverless Frameworks
2
Tagging
1
ChatOps Tools
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