awesome-python
Awesome-Python
https://github.com/GazimbeIsaac/awesome-python
Last synced: 6 days ago
JSON representation
-
Data Visualization
- awesome-javascript
- ggplot - Same API as ggplot2 for R.
- Seaborn - Statistical data visualization using Matplotlib.
- Bokeh - Interactive Web Plotting for Python.
- VisPy - High-performance scientific visualization based on OpenGL.
- Altair - Declarative statistical visualization library for Python.
- PyGraphviz - Python interface to [Graphviz](http://www.graphviz.org/).
- 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
-
Web Frameworks
- awesome-pyramid
- Django - The most popular web framework in Python.
- Pyramid - A small, fast, down-to-earth, open source Python web framework.
- GitHub Web2py
- CherryPy - A minimalist Python web framework, HTTP/1.1-compliant and WSGI thread-pooled.
- awesome-flask
- Sanic - Web server that's written to go fast.
- awesome-dash
- Flask - A microframework for Python.
- awesome-django
- Web2py - Full-stack enterprise framework for secure database-driven web-based applications.
-
Machine Learning
- awesome-machine-learning
- Metrics - Machine learning evaluation metrics.
- vowpal_porpoise - A lightweight Python wrapper for [Vowpal Wabbit](https://github.com/JohnLangford/vowpal_wabbit/).
- scikit-learn - The most popular Python library for Machine Learning.
- NuPIC - Numenta Platform for Intelligent Computing.
-
Deep Learning
- awesome-deep-learning
- Neupy - Running and testing different Artificial Neural Networks algorithms.
- TensorFlow - The most popular Deep Learning framework created by Google.
- Theano - A library for fast numerical computation.
- Caffe - A fast open framework for deep learning..
- Serpent.AI - Game agent framework. Use any video game as a deep learning sandbox.
- Neupy - Running and testing different Artificial Neural Networks algorithms.
- Keras - A high-level neural networks library and capable of running on top of either TensorFlow or Theano.
- MXNet - A deep learning framework designed for both efficiency and flexibility.
-
ORM
- awesome-sqlalchemy
- Django Models - A part of Django.
- MongoEngine - A Python Object-Document-Mapper for working with MongoDB.
- Peewee - A small, expressive ORM.
- PynamoDB - A Pythonic interface for [Amazon DynamoDB](https://aws.amazon.com/dynamodb/).
- django-mongodb-engine - Django MongoDB Backend.
- flywheel - Object mapper for Amazon DynamoDB.
- butterdb - A Python ORM for Google Drive Spreadsheets.
- redisco - A Python Library for Simple Models and Containers Persisted in Redis.
- hot-redis - Rich Python data types for Redis.
- MongoEngine - A Python Object-Document-Mapper for working with MongoDB.
- Orator - The Orator ORM provides a simple yet beautiful ActiveRecord implementation.
- pyDAL - A pure Python Database Abstraction Layer.
- PonyORM - ORM that provides a generator-oriented interface to SQL.
-
Editor Plugins and IDEs
- PyCharm - Commercial Python IDE by JetBrains. Has free community edition available.
- Jedi-vim - Vim bindings for the Jedi auto-completion library for Python.
- Spyder - Open Source Python IDE.
- Magic Python - Cutting edge Python syntax highlighter for Sublime Text, Atom, and Visual Studio Code. Used by GitHub to highlight your Python code!
- Python-mode - An all in one plugin for turning Vim into a Python IDE.
- Anaconda - Anaconda turns your Sublime Text 3 in a full featured Python development IDE.
- SublimeJEDI - A Sublime Text plugin to the awesome auto-complete library Jedi.
- Python - An extension with rich support for the Python language, with features including linting, IntelliSense, formatting, refactoring, debugging, unit tests, and jupyter support.
- Elpy - Emacs Python Development Environment.
- PTVS - Python Tools for Visual Studio.
- YouCompleteMe - Includes [Jedi](https://github.com/davidhalter/jedi)-based completion engine for Python.
-
GUI
- PySide - Python bindings for the [Qt](http://www.qt.io/) cross-platform application and UI framework, supporting the Qt v4 framework.
- kivy - A library for creating NUI applications, running on Windows, Linux, Mac OS X, Android and iOS.
- PyGObject - Python Bindings for GLib/GObject/GIO/GTK+ (GTK+3)
- Tkinter - Tkinter is Python's de-facto standard GUI package.
- 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.
- curses - Built-in wrapper for [ncurses](http://www.gnu.org/software/ncurses/) used to create terminal GUI applications.
- PyQt - Python bindings for the [Qt](https://www.qt.io/) cross-platform application and UI framework, with support for both Qt v4 and Qt v5 frameworks.
- enaml - Creating beautiful user-interfaces with Declaratic Syntax like QML.
- Eel - Little library for making simple Electron-like offline HTML/JS GUI apps, with full access to Python capabilities and libraries.
- urwid - A library for creating terminal GUI applications with strong support for widgets, events, rich colors, etc.
- Flexx - Flexx is a pure Python toolkit for creating GUI's, that uses web technology for its rendering.
- pywebview - A lightweight cross-platform native wrapper around a webview component that allows to display HTML content in its own native dedicated window
- Toga - A Python native, OS native GUI toolkit.
-
Networking
- asyncio - (Python standard library) Asynchronous I/O, event loop, coroutines and tasks.
- pulsar - Event-driven concurrent framework for Python.
- diesel - Greenlet-based event I/O Framework for Python.
- NAPALM - Cross-vendor API to manipulate network devices.
- txZMQ - Twisted based wrapper for the ZeroMQ message library.
-
Build Tools
- 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.
- buildout - A build system for creating, assembling and deploying applications from multiple parts.
- SCons - A software construction tool.
-
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.
- djedi-cms - A lightweight but yet powerful Django CMS with plugins, inline editing and performance in mind.
- Widgy - Last CMS framework, based on Django.
- djedi-cms - A lightweight but yet powerful Django CMS with plugins, inline editing and performance in mind.
- Quokka - Flexible, extensible, small CMS powered by Flask and MongoDB.
- Opps - A Django-based CMS for magazines, newspapers websites and portals with high-traffic.
- Mezzanine - A powerful, consistent, and flexible content management platform.
- Wagtail - A Django content management system.
-
Code Analysis and Linter
- pylint - A fully customizable source code analyzer.
- MonkeyType - A system for Python that generates static type annotations by collecting runtime types
- pycallgraph - A library that visualises the flow (call graph) of your Python application.
- pylama - A code audit tool for Python and JavaScript.
- code2flow - Turn your Python and JavaScript code into DOT flowcharts.
- prospector - A tool to analyse Python code.
- flake8 - The modular source code checker: pep8, pyflakes and McCabe.
- coala - Language independent and easily extendable code analysis application.
- mypy - Check variable types during compile time.
-
Command-line Tools
- docopt - Pythonic command line arguments parser.
- howdoi - Instant coding answers via the command line.
- Python-Fire - A library for creating command line interfaces (CLIs) from absolutely any Python object.
- Gooey - Turn command line programs into a full GUI application with one line
- percol - Adds flavor of interactive selection to the traditional pipe concept on UNIX.
- PathPicker - Select files out of bash output.
- thefuck - Correcting your previous console command.
- doitlive - A tool for live presentations in the terminal.
- caniusepython3 - Determine what projects are blocking you from porting to Python 3.
- aws-cli - A universal command-line interface for Amazon Web Services.
- asciimatics - Cross-platform, full-screen terminal package (i.e. mouse/keyboard input and coloured, positioned text output) complete with high-level API for complex animations and special effects.
- try - A dead simple CLI to try out python packages - It's never been easier.
- bashplotlib - Making basic plots in the terminal.
- mycli - A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.
- pgcli - Postgres CLI with autocompletion and syntax highlighting.
- SAWS - A Supercharged AWS CLI.
- clint - Python Command-line Application Tools.
- httpie - A command line HTTP client, a user-friendly cURL replacement.
- docopt - Pythonic command line arguments parser.
- cliff - A framework for creating command-line programs with multi-level commands.
- colorama - Cross-platform colored terminal text.
- cement - CLI Application Framework for Python.
- python-prompt-toolkit - A Library for building powerful interactive command lines.
- cookiecutter - A command-line utility that creates projects from cookiecutters (project templates).
-
Concurrency and Parallelism
- 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 "threading" interface.
- threading - (Python standard library) Higher-level threading interface.
- uvloop - Ultra fast implementation of asyncio event loop on top of libuv.
- Tomorrow - Magic decorator syntax for asynchronous code.
- eventlet - Asynchronous framework with WSGI support.
-
Cryptography
- cryptography - A package designed to expose cryptographic primitives and recipes to Python developers.
- Passlib - Secure password storage/hashing library, very high level.
- PyNacl - Python binding to the Networking and Cryptography (NaCl) library.
- hashids - Implementation of [hashids](http://hashids.org) in Python.
- Paramiko - A Python (2.6+, 3.3+) implementation of the SSHv2 protocol, providing both client and server functionality.
-
Data Analysis
- Pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.
- Blaze - NumPy and Pandas interface to Big Data.
- Open Mining - Business Intelligence (BI) in Pandas interface.
- Orange - Data mining, data visualization, analysis and machine learning through visual programming or scripts.
-
Data Validation
- colander - Validating and deserializing data obtained via XML, JSON, an HTML form post.
- Schematics - Data Structure Validation.
- schema - A library for validating Python data structures.
- Cerberus - A lightweight and extensible data validation library.
- voluptuous - A Python data validation library.
- valideer - Lightweight extensible data validation and adaptation library.
- jsonschema - An implementation of [JSON Schema](http://json-schema.org/) for Python.
-
Database Drivers
- psycopg2 - The most popular PostgreSQL adapter for Python.
- mysql-python - The MySQL database connector for Python.
- oursql - A better MySQL connector with support for native prepared statements and BLOBs.
- pymssql - A simple database interface to Microsoft SQL Server.
- PyMySQL - Pure Python MySQL driver compatible to mysql-python.
- dataset - Store Python dicts in a database - works with SQLite, MySQL, and PostgreSQL.
- Plyvel - A fast and feature-rich Python interface to LevelDB.
- cassandra-python-driver - Python driver for Cassandra.
- queries - A wrapper of the psycopg2 library for interacting with PostgreSQL.
- txRedis - Twisted based client for Redis.
- telephus - Twisted based client for Cassandra.
- pycassa - Python Thrift driver for Cassandra.
- txpostgres - Twisted based asynchronous driver for PostgreSQL.
- awesome-mysql
- pymssql - A simple database interface to Microsoft SQL Server.
- mysqlclient - mysql-python fork supporting Python 3.
- PyMongo - The official Python client for MongoDB.
- HappyBase - A developer-friendly library for Apache HBase.
- redis-py - The Redis Python Client.
-
Date and Time
- pytz - World timezone definitions, modern and historical. Brings the [tz database](https://en.wikipedia.org/wiki/Tz_database) into Python.
- when.py - Providing user-friendly functions to help perform common date and time actions.
- maya - Datetimes for Humans, Maya is mostly built around the headaches and use-cases around parsing datetime data from websites.
- dateutil - Extensions to the standard Python [datetime](https://docs.python.org/2/library/datetime.html) module.
- moment - A Python library for dealing with dates/times. Inspired by [Moment.js](http://momentjs.com/).
- Chronyk - A Python 3 library for parsing human-written times and dates.
- PyTime - A easy-use Python module which aims to operate date/time/datetime by string.
- delorean - A library for clearing up the inconvenient truths that arise dealing with datetimes.
- Pendulum - Python datetimes made easy.
-
DevOps Tools
- OpenStack - Open source software for building private and public clouds.
- Docker Compose - Fast, isolated development environments using [Docker](https://www.docker.com/).
- supervisor - Supervisor process control system for UNIX.
- Ansible - A radically simple IT automation platform.
- SaltStack - Infrastructure automation and management system.
- psutil - A cross-platform process and system utilities module.
- pexpect - Controlling interactive programs in a pseudo-terminal like GNU expect.
- honcho - A Python clone of [Foreman](https://github.com/ddollar/foreman), for managing Procfile-based applications.
- Fabtools - Tools for writing awesome Fabric files.
- cuisine - Chef-like functionality for Fabric.
-
Distribution
- py2exe - Freezes Python scripts (Windows).
- dh-virtualenv - Build and distribute a virtualenv as a Debian package.
- PyInstaller - Converts Python programs into stand-alone executables (cross-platform).
-
E-commerce
- shoop - An open source E-Commerce platform based on Django.
- django-shop - A Django based shop system.
- merchant - A Django app to accept payments from various payment processors.
- money - Money class with optional CLDR-backed locale-aware formatting and an extensible currency exchange solution.
- forex-python - Foreign exchange rates, Bitcoin price index and currency conversion.
- Cartridge - A shopping cart app built using the Mezzanine.
- alipay - Unofficial Alipay API for Python.
- python-currencies - Display money format and its filthy currencies.
-
Foreign Function Interface
-
Game Development
- Cocos2d - cocos2d is a framework for building 2D games, demos, and other graphical/interactive applications. It is based on pyglet.
- Panda3D - 3D game engine developed by Disney and maintained by Carnegie Mellon's Entertainment Technology Center. Written in C++, completely wrapped in Python.
- Pygame - Pygame is a set of Python modules designed for writing games.
- RenPy - A Visual Novel engine.
- PySDL2 - A ctypes based wrapper for the SDL2 library.
- Pygame - Pygame is a set of Python modules designed for writing games.
- PyOpenGL - Python ctypes bindings for OpenGL and it's related APIs.
-
Geolocation
- GeoDjango - A world-class geographic web framework.
- geopy - Python Geocoding Toolbox.
- django-countries - A Django app that provides country choices for use with forms, flag icons static files, and a country field for models.
- GeoIP - Python API for MaxMind GeoIP Legacy Database.
- pygeoip - Pure Python GeoIP API.
- geojson - Python bindings and utilities for GeoJSON.
-
HTML Manipulation
- BeautifulSoup - Providing Pythonic idioms for iterating, searching, and modifying HTML or XML.
- xmldataset - Simple XML Parsing.
- bleach - A whitelist-based HTML sanitization and text linkification library.
- pyquery - A jQuery-like library for parsing HTML.
- xmltodict - Working with XML feel like you are working with JSON.
- MarkupSafe - Implements a XML/HTML/XHTML Markup safe string for Python.
- untangle - Converts XML documents to Python objects for easy access.
- html5lib - A standards-compliant library for parsing and serializing HTML documents and fragments.
-
Hardware
- Pingo - Pingo provides a uniform API to program devices like the Raspberry Pi, pcDuino, Intel Galileo, etc.
- Pyro - Python Robotics.
- Pyro - Python Robotics.
- keyboard - Hook and simulate global keyboard events on Windows and Linux.
- PyUserInput - A module for cross-platform control of the mouse and keyboard.
- scapy - A brilliant packet manipulation library.
- mouse - Hook and simulate global mouse events on Windows and Linux.
- wifi - A Python library and command line tool for working with WiFi on Linux.
- Pingo - Pingo provides a uniform API to program devices like the Raspberry Pi, pcDuino, Intel Galileo, etc.
- Pyro - Python Robotics.
- ino - Command line toolkit for working with [Arduino](https://www.arduino.cc/).
-
Imagery
- imgSeek - A project for searching a collection of images using visual similarity.
- pyBarcode - Create barcodes in Python without needing PIL.
- thumbor - A smart imaging service. It enables on-demand crop, re-sizing and flipping of images.
- pillow - Pillow is the friendly [PIL](http://www.pythonware.com/products/pil/) fork.
- Quads - Computer art based on quadtrees.
- nude.py - Nudity detection.
- python-qrcode - A pure Python QR Code generator.
- pagan - Retro identicon (Avatar) generation based on input string and hash.
- hmap - Image histogram remapping.
- pygram - Instagram-like image filters.
- scikit-image - A Python library for (scientific) image processing.
- wand - Python bindings for [MagickWand](http://www.imagemagick.org/script/magick-wand.php), C API for ImageMagick.
-
Implementations
- Jython - Implementation of Python programming language written in Java for the Java virtual machine (JVM).
- Numba - Python JIT complier to LLVM aimed at scientific Python.
- PyPy - Implementation of the Python programming language written in RPython and translated into C. PyPy focuses on speed, efficiency and compatibility with the original CPython interpreter. The interpreter uses black magic to make Python very fast without having to add in additional type information.
- Stackless Python - An enhanced version of the Python programming language which allows programmers to reap the benefits of thread-based programming without the performance and complexity problems associated with conventional threads.
- MicroPython - MicroPython - a lean and efficient Python programming language implementation for microcontrollers and constrained systems
- CPython - **Default, most widely used implementation of the Python programming language written in C.**
- CLPython - Implementation of the Python programming language written in Common Lisp.
- IronPython - Implementation of the Python programming language written in C# targeting the .NET Framework and Mono.
- Pyjion - A JIT for Python based upon CoreCLR.
- PeachPy - x86-64 assembler embedded in Python. Can be used as inline assembler for Python or as a stand-alone assembler for Windows, Linux, OS X, Native Client and Go.
- Pyston - A Python implementation built using LLVM and modern JIT techniques with the goal of achieving good performance.
- PySec - Hardened version of python that makes it easier for security professionals and developers to write applications more resilient to attacks and manipulations.
- Grumpy - More compiler than interpreter as more powerful CPython2.7 replacement (alpha).
-
Microsoft Windows
- Python(x,y) - Scientific-applications-oriented Python Distribution based on Qt and Spyder.
- WinPython - Portable development environment for Windows 7/8.
- PyWin32 - Python Extensions for Windows.
- PythonNet - Python Integration with the .NET Common Language Runtime (CLR).
- Python(x,y) - Scientific-applications-oriented Python Distribution based on Qt and Spyder.
- pythonlibs - Unofficial Windows binaries for Python extension packages.
-
Miscellaneous
- Tryton - A general purpose business framework.
- attrs - Replacement for `__init__`, `__eq__`, `__repr__`, etc. boilerplate in class definitions.
- pluginbase - A simple but flexible plugin system for Python.
- itsdangerous - Various helpers to pass trusted data to untrusted environments.
- Pychievements - A framework for creating and tracking achievements.
- blinker - A fast Python in-process signal/event dispatching system.
-
Natural Language Processing
- spaCy - A library for industrial-strength natural language processing in Python and Cython.
- TextBlob - Providing a consistent API for diving into common NLP tasks.
- Jieba - Chinese text segmentation.
- SnowNLP - A library for processing Chinese text.
- polyglot - Natural language pipeline supporting hundreds of languages.
- langid.py - Stand-alone language identification system.
- gensim - Topic Modelling for Humans.
- NLTK - A leading platform for building Python programs to work with human language data.
- Pattern - A web mining module for the Python.
-
Package Management
- pip - The Python package and dependency manager.
- Curdling - Curdling is a command line tool for managing Python packages.
- pip-tools - A set of tools to keep your pinned Python dependencies fresh.
- conda - Cross-platform, Python-agnostic binary package manager.
- Curdling - Curdling is a command line tool for managing Python packages.
-
Package Repositories
-
RESTful API
- django-tastypie - Creating delicious APIs for Django apps.
- falcon - A high-performance framework for building cloud APIs and web app backends.
- flask-api - Browsable Web APIs for Flask.
- eve - REST API framework powered by Flask, MongoDB and good intentions.
- apistar - A smart Web API framework, designed for Python 3.
- flask-restless - Generating RESTful APIs for database models defined with SQLAlchemy.
- flask-restful - Quickly building REST APIs for Flask.
- sandman - Automated REST APIs for existing database-driven systems.
- flask-api-utils - Taking care of API representation and authentication for Flask.
- ripozo - Quickly creating REST/HATEOAS/Hypermedia APIs.
- restless - Framework agnostic REST framework based on lessons learned from Tastypie.
- cornice - A RESTful framework for Pyramid.
- hug - A Python3 framework for cleanly exposing APIs over HTTP and the Command Line with automatic documentation and validation.
- django-tastypie - Creating delicious APIs for Django apps.
-
Science
- PyDy - Short for Python Dynamics, used to assist with workflow in the modeling of dynamic motion.
- RDKit - Cheminformatics and Machine Learning Software.
- SimPy - A process-based discrete-event simulation framework.
- Zipline - A Pythonic algorithmic trading library.
- SymPy - A Python library for symbolic mathematics.
- statsmodels - Statistical modeling and econometrics in Python.
- bccb - Collection of useful code related to biological analysis.
- SciPy - A Python-based ecosystem of open-source software for mathematics, science, and engineering.
- bcbio-nextgen - Providing best-practice pipelines for fully automated high throughput sequencing analysis.
- ObsPy - A Python toolbox for seismology.
- Open Babel - A chemical toolbox designed to speak the many languages of chemical data.
- NumPy - A fundamental package for scientific computing with Python.
- astropy - A community Python library for Astronomy.
- PyMC - Markov Chain Monte Carlo sampling toolkit.
-
Search
- elasticsearch-py - The official low-level Python client for [Elasticsearch](https://www.elastic.co/products/elasticsearch).
- django-haystack - Modular search for Django.
- elasticsearch-dsl-py - The official high-level Python client for Elasticsearch.
- esengine - ElasticSearch ODM (Object Document Mapper) for Python.
- pysolr - A lightweight Python wrapper for Apache Solr (incl. SolrCloud awareness).
- Whoosh - A fast, pure Python search engine library.
- elasticsearch-py - The official low-level Python client for [Elasticsearch](https://www.elastic.co/products/elasticsearch).
- solrpy - A Python client for [solr](http://lucene.apache.org/solr/).
-
Template Engine
-
Testing
- mock - (Python standard library) A mocking and patching library.
- unittest - (Python standard library) Unit testing framework.
- pytest - A mature full-featured Python testing tool.
- fake2db - Fake database generator.
- locust - Scalable user load testing tool written in Python.
- factory_boy - A test fixtures replacement for Python.
- faker - A Python package that generates fake data.
- mixer - Another fixtures replacement. Supported Django, Flask, SQLAlchemy, Peewee and etc.
- PyAutoGUI - PyAutoGUI is a cross-platform GUI automation Python module for human beings.
- responses - A utility library for mocking out the requests Python library.
- mimesis - is a Python library that help you generate fake data.
- VCR.py - Record and replay HTTP interactions on your tests.
- splinter - Open source tool for testing web applications.
- Robot Framework - A generic test automation framework.
- FuckIt.py - FuckIt.py uses state-of-the-art technology to make sure your Python code runs whether it has any right to or not.
- nose2 - The successor to nose, based on unittest2.
- freezegun - Travel through time by mocking the datetime module.
- Mocket - Socket Mock Framework plus HTTP[S]/asyncio/gevent mocking library with recording/replaying capability.
- httpretty - HTTP request mock tool for Python.
- httmock - A mocking library for requests for Python 2.6+ and 3.2+.
- nose - A nicer unittest for Python.
- green - A clean, colorful test runner.
- sixpack - A language-agnostic A/B Testing framework.
- hypothesis - Hypothesis is an advanced Quickcheck style property based testing library.
- model_mommy - Creating random fixtures for testing in Django.
-
Third-party APIs
- apache-libcloud - One Python library for all clouds.
- boto3 - Python interface to Amazon Web Services.
- twython - A Python wrapper for the Twitter API.
- gspread - Google Spreadsheets Python API.
- facebook-sdk - Facebook Platform Python SDK.
- List of Python API Wrappers and Libraries
- gmail - A Pythonic interface for Gmail.
- facepy - Facepy makes it really easy to interact with Facebook's Graph API
- django-wordpress - WordPress models and views for Django.
- google-api-python-client - Google APIs Client Library for Python.
-
Asset Management
- fanstatic - Packages, optimizes, and serves static file dependencies as Python packages.
- django-storages - A collection of custom storage back ends for Django.
- django-compressor - Compresses linked and inline JavaScript or CSS into a single cached file.
- flask-assets - Helps you integrate webassets into your Flask app.
- django-pipeline - An asset packaging library for Django.
- webassets - Bundles, optimizes, and manages unique cache-busting URLs for static resources.
- jinja-assets-compressor - A Jinja extension to compile and compress your assets.
- fanstatic - Packages, optimizes, and serves static file dependencies as Python packages.
-
WSGI Servers
- uWSGI - A project aims at developing a full stack for building hosting services, written in C.
- fapws3 - Asynchronous (network side only), written in C.
- paste - Multi-threaded, stable, tried and tested.
- paste - Multi-threaded, stable, tried and tested.
- paste - Multi-threaded, stable, tried and tested.
- netius - Asynchronous, very fast.
- bjoern - Asynchronous, very fast and written in C.
- fapws3 - Asynchronous (network side only), written in C.
- gunicorn - Pre-forked, partly written in C.
- meinheld - Asynchronous, partly written in C.
- rocket - Multi-threaded.
- Werkzeug - A WSGI utility library for Python that powers Flask and can easily be embedded into your own projects.
- paste - Multi-threaded, stable, tried and tested.
- paste - Multi-threaded, stable, tried and tested.
- paste - Multi-threaded, stable, tried and tested.
-
Websites
-
Podcasts
-
Database
- pickleDB - A simple and lightweight key-value store for Python.
- TinyDB - A tiny, document-oriented database.
- PipelineDB - The Streaming SQL Database.
-
Code Quality
- Codacy - Automated Code Review to ship better code, faster. Free for Open Source.
- QuantifiedCode - A data-driven, automated, continuous code review tool.
- Landscape - Hosted continuous Python code metrics.
-
Continuous Integration
- CircleCI - A CI service that can run very fast parallel testing. (GitHub only)
- Wercker - A Docker-based platform for building and deploying applications and microservices.
- awesome-CIandCD
- Vexor CI - A continuous integration tool for private apps with pay-per-minute billing model.
- Travis CI - A popular CI service for your open source and [private](https://travis-ci.com) projects. (GitHub only)
-
Computer Vision
- SimpleCV - An open source framework for building computer vision applications.
- pytesseract - Another wrapper for [Google Tesseract OCR](https://github.com/tesseract-ocr).
- pyocr - A wrapper for Tesseract and Cuneiform.
- OpenCV - Open Source Computer Vision Library.
- SimpleCV - An open source framework for building computer vision applications.
-
Text Processing
- PLY - Implementation of lex and yacc parsing tools for Python
- pyparsing - A general purpose framework for generating parsers.
- difflib - (Python standard library) Helpers for computing deltas.
- phonenumbers - Parsing, formatting, storing and validating international phone numbers.
- python-slugify - A Python slugify library that translates unicode to ASCII.
- fuzzywuzzy - Fuzzy String Matching.
- pypinyin - Convert Chinese hanzi to pinyin.
- chardet - Python 2/3 compatible character encoding detector.
- uniout - Print readable chars instead of the escaped string.
- xpinyin - A library to translate Chinese hanzi (漢字) to pinyin (拼音).
- pyfiglet - An implementation of figlet written in Python.
- sqlparse - A non-validating SQL parser.
- shortuuid - A generator library for concise, unambiguous and URL-safe UUIDs.
- python-user-agents - Browser user agent parser.
- pangu.py - Spacing texts for CJK and alphanumerics.
- python-nameparser - Parsing human names into their individual components.
- unicode-slugify - A slugifier that generates unicode slugs with Django as a dependency.
- ftfy - Makes Unicode text less broken and more consistent automagically.
- awesome-slugify - A Python slugify library that can preserve unicode.
- PLY - Implementation of lex and yacc parsing tools for Python
- Levenshtein - Fast computation of Levenshtein distance and string similarity.
-
Network Virtualization
- Mininet - A popular network emulator and API written in Python.
- Pyretic - A member of the Frenetic family of SDN programming languages that provides powerful abstractions over network switches or emulators.
- POX - An open source development platform for Python-based Software Defined Networking (SDN) control applications, such as OpenFlow SDN controllers.
- SDX Platform - SDN based IXP implementation that leverages Mininet, POX and Pyretic.
- Mininet - A popular network emulator and API written in Python.
- Pyretic - A member of the Frenetic family of SDN programming languages that provides powerful abstractions over network switches or emulators.
-
Files
- imghdr - (Python standard library) Determine the type of an image.
- mimetypes - (Python standard library) Map filenames to MIME types.
- Unipath - An object-oriented approach to file/directory operations.
- watchdog - API and shell utilities to monitor file system events.
- python-magic - A Python interface to the libmagic file type identification library.
- path.py - A module wrapper for [os.path](https://docs.python.org/2/library/os.path.html).
-
Configuration
- ConfigObj - INI file parser with validation.
- ConfigParser - (Python standard library) INI file parser.
- python-decouple - Strict separation of settings from code.
-
Audio
- id3reader - A Python module for reading MP3 meta data.
- audioread - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.
- dejavu - Audio fingerprinting and recognition.
- pyAudioAnalysis - Python Audio Analysis Library: Feature Extraction, Classification, Segmentation and Applications
- pydub - Manipulate audio with a simple and easy high level interface.
- TimeSide - Open web audio processing framework.
- mutagen - A Python module to handle audio metadata.
- m3u8 - A module for parsing m3u8 file.
- audiolazy - Expressive Digital Signal Processing (DSP) package for Python.
- pyechonest - Python client for the [Echo Nest](http://developer.echonest.com/) API.
- django-elastic-transcoder - Django + [Amazon Elastic Transcoder](https://aws.amazon.com/elastictranscoder/).
- tinytag - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
- mingus - An advanced music theory and notation package with MIDI file and playback support.
-
Static Site Generator
- Hyde - Jinja2-based static web site generator.
- Nikola - A static website and blog generator.
- Lektor - An easy to use static CMS and blog engine.
- Tinkerer - Tinkerer is a blogging engine/.static website generator powered by Sphinx.
- Cactus - Static site generator for designers.
- Hyde - Jinja2-based static web site generator.
-
RPC Servers
- SimpleXMLRPCServer - (Python standard library) Simple XML-RPC server implementation, single-threaded.
- zeroRPC - zerorpc is a flexible RPC implementation based on [ZeroMQ](http://zeromq.org/) and [MessagePack](http://msgpack.org/).
- SimpleJSONRPCServer - This library is an implementation of the JSON-RPC specification.
-
Logging
-
Job Scheduler
- Joblib - A set of tools to provide lightweight pipelining in Python.
- schedule - Python job scheduling for humans.
- Plan - Writing crontab file in Python like a charm.
- gunnery - Multipurpose task execution tool for distributed systems with web-based interface.
- django-schedule - A calendaring app for Django.
- Spiff - A powerful workflow engine implemented in pure Python.
- TaskFlow - A Python library that helps to make task execution easy, consistent and reliable.
-
Specific Formats Processing
- ReportLab - Allowing Rapid creation of rich PDF documents.
- openpyxl - A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
- PDFMiner - A tool for extracting information from PDF documents.
- csvkit - Utilities for converting to and working with CSV.
- python-docx - Reads, queries and modifies Microsoft Word 2007/2008 docx files.
- Mistune - Fastest and full featured pure Python parsers of Markdown.
- pyexcel - Providing one API for reading, manipulating and writing csv, ods, xls, xlsx and xlsm files.
- unp - A command line tool that can unpack archives easily.
- xlwt - excel/xlrd) - Writing and reading data and formatting information from Excel files.
- tablib - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
- Marmir - Takes Python data structures and turns them into spreadsheets.
- PyPDF2 - A library capable of splitting, merging and transforming PDF pages.
- Python-Markdown - A Python implementation of John Gruber’s Markdown.
- unoconv - Convert between any document format supported by LibreOffice/OpenOffice.
- xlwings - A BSD-licensed library that makes it easy to call Python from Excel and vice versa.
-
Twitter
-
Environment Management
- venv - (Python standard library in Python 3.3+) Creating lightweight virtual environments.
- pyenv - Simple Python version management.
- p - Dead simple interactive Python version management.
- virtualenvwrapper - A set of extensions to virtualenv.
- Pipenv - Sacred Marriage of Pipfile, Pip, & Virtualenv.
-
Weekly
-
Algorithms and Design Patterns
- python-patterns - A collection of design patterns in Python.
- PyPattyrn - A simple yet effective library for implementing common design patterns.
- algorithms - A module of algorithms for Python.
-
Serverless Frameworks
- Zappa - A tool for deploying WSGI applications on AWS Lambda and API Gateway.
- python-lambda - A toolkit for developing and deploying Python code in AWS Lambda.
- apex - Build, deploy, and manage [AWS Lambda](https://aws.amazon.com/lambda/) functions with ease.
-
Admin Panels
- Ajenti - The admin panel your servers deserve.
- django-xadmin - Drop-in replacement of Django admin comes with lots of goodies.
- flower - Real-time monitor and web admin for Celery.
- Wooey - A Django app which creates automatic web UIs for Python scripts.
- flask-admin - Simple and extensible administrative interface framework for Flask.
-
Authentication
- 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 - Implementation of the JSON Web Token draft 01.
- python-jwt - Module for generating and verifying JSON Web Tokens.
- Authomatic - Simple but powerful framework agnostic authentication/authorization client.
- Flask-OAuthlib - OAuth 1.0/a, 2.0 implementation of client and provider for Flask.
- rauth - A Python library for OAuth 1.0/a, 2.0, and Ofly.
- sanction - A dead simple OAuth2 client implementation.
- python-jws - Implementation of JSON Web Signatures draft 02.
- jose - JavaScript Object Signing and Encryption draft implementation.
- OAuthLib - A generic and thorough implementation of the OAuth request-signing logic.
- django-oauth-toolkit - OAuth 2 goodies for Django.
-
Web Crawling
- portia - Visual scraping for Scrapy.
- pyspider - A powerful spider system.
- RoboBrowser - A simple, Pythonic library for browsing the web without a standalone web browser.
- Demiurge - PyQuery-based scraping micro-framework.
- cola - A distributed crawling framework.
- MechanicalSoup - A Python library for automating interaction with websites.
- Grab - Site scraping framework.
-
MapReduce
- luigi - A module that helps you build complex pipelines of batch jobs.
- mrjob - Run MapReduce jobs on Hadoop or Amazon Web Services.
- streamparse - Run Python code against real-time streams of data. Integrates with [Apache Storm](http://storm.apache.org/).
-
News Feed
- Stream-Framework - Building newsfeed and notification systems using Cassandra and Redis.
- django-activity-stream - Generating generic activity streams from the actions on your site.
-
Recommender Systems
- LightFM - A Python implementation of a number of popular recommendation algorithms.
- annoy - Approximate Nearest Neighbors in C++/Python optimized for memory usage.
- implicit - A fast Python implementation of collaborative filtering for implicit datasets.
- TensorRec - A Recommendation Engine Framework in TensorFlow.
- fastFM - A library for Factorization Machines.
- surprise - A scikit for building and analyzing recommender systems.
- libffm - A library for Field-aware Factorization Machine (FFM).
-
Debugging Tools
- profiling - An interactive Python profiler.
- pyelftools - Parsing and analyzing ELF files and DWARF debugging information.
- wdb - An improbable web debugger through WebSockets.
- django-devserver - A drop-in replacement for Django's runserver.
- pyringe - Debugger capable of attaching to and injecting code into Python processes.
- vprof - Visual Python profiler.
- hunter - Hunter is a flexible code tracing toolkit.
- lptrace - [strace](http://man7.org/linux/man-pages/man1/strace.1.html) for Python programs.
- line_profiler - Line-by-line profiling.
- remote-pdb - Remote vanilla PDB (over TCP sockets).
- manhole - Debug service that will accept unix domain socket connections and present the stacktraces for all threads and an interactive prompt.
- memory_profiler - Monitor Memory usage of Python code.
- django-debug-toolbar - Display various debug information for Django.
- flask-debugtoolbar - A port of the django-debug-toolbar to flask.
-
Functional Programming
- fn.py - Functional programming in Python: implementation of missing features to enjoy FP.
- Toolz - A collection of functional utilities for iterators, functions, and dictionaries.
- funcy - A fancy and practical functional tools.
- CyToolz - Cython implementation of Toolz: High performance functional utilities.
-
Forms
- django-crispy-forms - A Django app which lets you create beautiful forms in a very elegant and DRY way.
- Deform - Python HTML form generation library influenced by the formish form generation library.
- django-remote-forms - A platform independent Django form serializer.
- django-bootstrap3 - Bootstrap 3 integration with Django.
-
Email
- Nylas Sync Engine - Providing a RESTful API on top of a powerful email sync platform.
- modoboa - A mail hosting and management platform including a modern and simplified Web UI.
- yagmail - Yet another Gmail/SMTP client.
- flanker - A email address and Mime parsing library.
- imbox - Python IMAP for Humans.
- Marrow Mailer - High-performance extensible mail delivery framework.
- lamson - Pythonic SMTP Application Server.
- envelopes - Mailing for human beings.
- inbox.py - Python SMTP Server for Humans.
-
Processes
- sh - A full-fledged subprocess replacement for Python.
- delegator.py - [Subprocesses](https://docs.python.org/3.6/library/subprocess.html) for Humans™ 2.0.
-
WebSocket
- WebSocket-for-Python - WebSocket client and server library for Python 2 and 3 as well as PyPy.
- django-channels - Developer-friendly asynchrony for Django
- AutobahnPython - WebSocket & WAMP for Python on Twisted and [asyncio](https://docs.python.org/3/library/asyncio.html).
- django-socketio - WebSockets for Django.
- Crossbar - Open-source Unified Application Router (Websocket & WAMP for Python on Autobahn).
-
Caching
- django-cacheops - A slick ORM cache with automatic granular event-driven invalidation.
- django-cache-machine - Automatic caching and invalidation for Django models.
- johnny-cache - A caching framework for django applications.
- Beaker - A library for caching and sessions for use with web applications and stand-alone Python scripts and applications.
- pylibmc - A Python wrapper around the [libmemcached](http://libmemcached.org/libMemcached.html) interface.
- django-viewlet - Render template parts with extended cache control.
-
Permissions
- django-guardian - Implementation of per object permissions for Django 1.2+
- django-rules - A tiny but powerful app providing object-level permissions to Django, without requiring a database.
- Carteblanche - Module to align code with thoughts of users and designers. Also magically handles navigation and permissions.
-
Queue
-
Web Content Extracting
- python-goose - HTML Content/Article Extractor.
- textract - Extract text from any document, Word, PowerPoint, PDFs, etc.
- newspaper - News extraction, article extraction and content curation in Python.
- html2text - Convert HTML to Markdown-formatted text.
- lassie - Web Content Retrieval for Humans.
- sumy - A module for automatic summarization of text documents and HTML pages.
- sanitize - Bringing sanity to world of messed-up data.
- micawber - A small library for extracting rich content from URLs.
- python-readability - Fast Python port of arc90's readability tool.
- opengraph - A Python module to parse the Open Graph Protocol
- toapi - Every web site provides APIs
- Haul - An Extensible Image Crawler.
-
Downloader
-
Documentation
- awesome-sphinxdoc
- Pycco - The literate-programming-style documentation generator.
- pdoc - Epydoc replacement to auto generate API documentation for Python libraries.
-
Serialization
- marshmallow - marshmallow is an ORM/ODM/framework-agnostic library for converting complex datatypes, such as objects, to and from native Python datatypes.
-
Anti-spam
- django-simple-captcha - A simple and highly customizable Django app to add captcha images to any Django form.
- django-simple-spam-blocker - Simple spam blocker for Django.
-
URL Manipulation
- furl - A small Python library that makes parsing and manipulating URLs easy.
- pyshorteners - A pure Python URL shortening lib.
- purl - A simple, immutable URL class with a clean API for interrogation and manipulation.
- short_url - Python implementation for generating Tiny URL and bit.ly-like URLs.
- webargs - A friendly library for parsing HTTP request arguments, with built-in support for popular web frameworks, including Flask, Django, Bottle, Tornado, and Pyramid.
-
HTTP
-
Compatibility
- Python-Modernize - Modernizes Python code for eventual Python 3 migration.
- Six - Python 2 and 3 compatibility utilities.
-
Interactive Interpreter
-
Internationalization
-
Video
- scikit-video - Video processing routines for SciPy.
-
Tagging
- django-taggit - Simple tagging for Django.
Programming Languages
Categories
Testing
25
Command-line Tools
24
Text Processing
21
Database Drivers
19
Websites
15
Specific Formats Processing
15
WSGI Servers
15
Weekly
14
ORM
14
RESTful API
14
Science
14
Debugging Tools
14
GUI
14
Authentication
13
Audio
13
Implementations
13
Imagery
12
Web Content Extracting
12
Editor Plugins and IDEs
11
Hardware
11
Web Frameworks
11
DevOps Tools
10
Data Visualization
10
Twitter
10
Third-party APIs
10
Email
9
Deep Learning
9
Code Analysis and Linter
9
CMS
9
Natural Language Processing
9
Date and Time
9
HTML Manipulation
8
E-commerce
8
Search
8
Asset Management
8
Data Validation
7
Job Scheduler
7
Web Crawling
7
Game Development
7
Recommender Systems
7
Concurrency and Parallelism
7
Miscellaneous
6
Network Virtualization
6
Geolocation
6
Files
6
Microsoft Windows
6
Static Site Generator
6
Caching
6
URL Manipulation
5
Admin Panels
5
Environment Management
5
Cryptography
5
Networking
5
Computer Vision
5
Machine Learning
5
Build Tools
5
Package Management
5
Continuous Integration
5
WebSocket
5
Functional Programming
4
Forms
4
HTTP
4
Data Analysis
4
Package Repositories
4
Foreign Function Interface
4
Logging
4
Distribution
3
Configuration
3
Code Quality
3
Serverless Frameworks
3
Database
3
Permissions
3
Documentation
3
MapReduce
3
RPC Servers
3
Algorithms and Design Patterns
3
Queue
3
News Feed
2
Processes
2
Interactive Interpreter
2
Internationalization
2
Template Engine
2
Anti-spam
2
Compatibility
2
Podcasts
2
Downloader
2
Tagging
1
Serialization
1
Video
1
Sub Categories
Keywords
python
165
django
13
testing
12
http
11
machine-learning
10
python3
9
awesome-list
8
flask
7
awesome
7
debugging
6
python-3
6
aws
6
cli
6
database
5
web
5
library
5
asyncio
5
cloud-management
4
cloud
4
javascript
4
linux
4
mock
4
terminal
4
framework
4
api
4
json
4
sqlalchemy
4
pypi
4
deep-learning
4
recommender-system
4
email
3
python2
3
automation
3
pallets
3
matrix-factorization
3
crawler
3
rest
3
monitoring
3
redis
3
data-science
3
audio
3
visualization
3
orm
3
schema
3
serialization
3
mocking
3
package
3
developer-tools
3
testing-tools
3
shell
3