A curated list of awesome Python frameworks, libraries, software and resources

Admin Panels

5554
ajenti - The admin panel your servers deserve.
3622
django-xadmin - Drop-in replacement of Django admin comes with lots of goodies.
3514
flower - Real-time monitor and web admin for Celery.
3483
flask-admin - Simple and extensible administrative interface framework for Flask.
1212
wooey - A Django app which creates automatic web UIs for Python scripts.
django-grappelli - A jazzy skin for the Django Admin-Interface.
django-suit - Alternative Django Admin-Interface (free only for Non-commercial use).

Algorithms and Design Patterns

19728
python-patterns - A collection of design patterns in Python.
14434
algorithms - Minimal examples of data structures and algorithms in Python.
748
PyPattyrn - A simple yet effective library for implementing common design patterns.
sortedcontainers - Fast, pure-Python implementation of SortedList, SortedDict, and SortedSet types.

Audio

8585
beets - A music library manager and MusicBrainz tagger.
4338
dejavu - Audio fingerprinting and recognition.
3347
pydub - Manipulate audio with a simple and easy high level interface.
2192
pyAudioAnalysis - Python Audio Analysis Library: Feature Extraction, Classification, Segmentation and Applications
423
mutagen - A Python module to handle audio metadata.
329
tinytag - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
249
audioread - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.
239
TimeSide - Open web audio processing framework.
145
eyeD3 - A tool for working with audio files, specifically MP3 files containing ID3 metadata.
mingus - An advanced music theory and notation package with MIDI file and playback support.

Authentication

4431
django-allauth - Authentication app for Django that "just works."
2832
python-oauth2 - A fully tested, abstract interface to creating OAuth clients and servers.
2762
python-social-auth - An easy-to-setup social authentication mechanism.
2558
pyjwt - JSON Web Token implementation in Python.
1748
oauthlib - A generic and thorough implementation of the OAuth request-signing logic.
1540
django-oauth-toolkit - OAuth 2 goodies for Django.
928
authlib - JavaScript Object Signing and Encryption draft implementation.
505
python-jose - A JOSE implementation in Python.
150
python-jwt - A module for generating and verifying JSON Web Tokens.

Build Tools

2931
PlatformIO - A console tool to build code with different development platforms.
1075
pybuilder - A continuous build tool written in pure Python.
BitBake - A make-like build tool for embedded Linux.
buildout - A build system for creating, assembling and deploying applications from multiple parts.
SCons - A software construction tool.

Built-in Classes Enhancement

2438
attrs - Replacement for __init__, __eq__, __repr__, etc. boilerplate in class definitions.
1178
Box - Python dictionaries with advanced dot notation access.
398
bidict - Efficient, Pythonic bidirectional map data structures and related functionality..
52
DottedDict - A library that provides a method of accessing lists and dicts with a dotted path notation.
dataclasses - (Python standard library) Data classes.

CMS

3730
mezzanine - A powerful, consistent, and flexible content management platform.
2018
quokka - Flexible, extensible, small CMS powered by Flask and MongoDB.
752
feincms - One of the most advanced Content Management Systems built on Django.
330
Kotti - A high-level, Pythonic web application framework built on Pyramid.
wagtail - A Django content management system.
django-cms - An Open source enterprise CMS based on the Django.
plone - A CMS built on top of the open source application server Zope.

Caching

1014
django-cacheops - A slick ORM cache with automatic granular event-driven invalidation.
728
django-cache-machine - Automatic caching and invalidation for Django models.
405
pylibmc - A Python wrapper around the libmemcached interface.
394
beaker - A WSGI middleware for sessions and caching.
dogpile.cache - dogpile.cache is next generation replacement for Beaker made by same authors.
HermesCache - Python caching library with tag-based invalidation and dogpile effect prevention.
python-diskcache - SQLite and file backed cache backend with faster lookups than memcached and redis.

ChatOps Tools

1937
errbot - The easiest and most popular chatbot to implement ChatOps.

Code Analysis

8886
yapf - Yet another Python code formatter from Google.
8272
black - The uncompromising Python code formatter.
2751
coala - Language independent and easily extendable code analysis application.
2320
pyre-check - Performant type checking.
2086
MonkeyType - A system for Python that generates static type annotations by collecting runtime types
1260
pycallgraph - A library that visualises the flow (call graph) of your Python application.
1089
prospector - A tool to analyse Python code.
566
code2flow - Turn your Python and JavaScript code into DOT flowcharts.
537
pylama - A code audit tool for Python and JavaScript.
flake8 - A wrapper around pycodestyle, pyflakes and McCabe.
pylint - A fully customizable source code analyzer.
mypy - Check variable types during compile time.

Command-line Tools

41797
thefuck - Correcting your previous console command.
40248
httpie - A command line HTTP client, a user-friendly cURL replacement.
13647
python-fire - A library for creating command line interfaces from absolutely any Python object.
9088
cookiecutter - A command-line utility that creates projects from cookiecutters (project templates).
7703
pgcli - Postgres CLI with autocompletion and syntax highlighting.
7198
mycli - A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.
7068
howdoi - Instant coding answers via the command line.
5263
python-prompt-toolkit - A library for building powerful interactive command lines.
4056
PathPicker - Select files out of bash output.
3931
saws - A Supercharged aws-cli.
2693
percol - Adds flavor of interactive selection to the traditional pipe concept on UNIX.
2484
clint - Python Command-line Application Tools.
2368
doitlive - A tool for live presentations in the terminal.
2364
tmuxp - A tmux session manager.
1335
asciimatics - A package to create full-screen text UIs (from interactive forms to ASCII animations).
1155
bashplotlib - Making basic plots in the terminal.
1144
kube-shell - An integrated shell for working with the Kubernetes CLI.
478
try - A dead simple CLI to try out python packages - it's never been easier.
cement - CLI Application Framework for Python.
click - A package for creating beautiful command line interfaces in a composable way.
cliff - A framework for creating command-line programs with multi-level commands.
docopt - Pythonic command line arguments parser.
colorama - Cross-platform colored terminal text.

Compatibility

512
python-modernize - Modernizes Python code for eventual Python 3 migration.
python-future - The missing compatibility layer between Python 2 and Python 3.
six - Python 2 and 3 compatibility utilities.

Computer Vision

1993
pytesseract - Another wrapper for Google Tesseract OCR.
OpenCV - Open Source Computer Vision Library.
SimpleCV - An open source framework for building computer vision applications.

Concurrency and Parallelism

5680
uvloop - Ultra fast implementation of asyncio event loop on top of libuv.
378
scoop - Scalable Concurrent Operations in Python.
concurrent.futures - (Python standard library) A high-level interface for asynchronously executing callables.
multiprocessing - (Python standard library) Process-based parallelism.
eventlet - Asynchronous framework with WSGI support.
gevent - A coroutine-based Python networking library that uses greenlet.

Configuration

940
python-decouple - Strict separation of settings from code.
186
configobj - INI file parser with validation.
configparser - (Python standard library) INI file parser.
profig - Config from multiple formats with value conversion.

Cryptography

5131
paramiko - A Python (2.6+, 3.3+) implementation of the SSHv2 protocol, providing both client and server functionality.
577
pynacl - Python binding to the Networking and Cryptography (NaCl) library.
cryptography - A package designed to expose cryptographic primitives and recipes to Python developers.
passlib - Secure password storage/hashing library, very high level.

Data Analysis

2623
Blaze - NumPy and Pandas interface to Big Data.
971
Open Mining - Business Intelligence (BI) in Pandas interface.
564
Optimus - Cleansing, pre-processing, feature engineering, exploratory data analysis and easy Machine Learning with a PySpark backend.
Orange - Data mining, data visualization, analysis and machine learning through visual programming or scripts.
Pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.

Data Validation

2160
Schematics - Data Structure Validation.
2157
jsonschema - An implementation of JSON Schema for Python.
1691
schema - A library for validating Python data structures.
1562
Cerberus - A lightweight and extensible data validation library.
1419
voluptuous - A Python data validation library.
219
valideer - Lightweight extensible data validation and adaptation library.
colander - Validating and deserializing data obtained via XML, JSON, an HTML form post.
Dash - Built on top of Flask, React and Plotly aimed at analytical web applications.

Data Visualization

9163
Bokeh - Interactive Web Plotting for Python.
5833
Seaborn - Statistical data visualization using Matplotlib.
3451
Altair - Declarative statistical visualization library for Python.
3436
ggplot - Same API as ggplot2 for R.
2248
bqplot - Interactive Plotting Library for the Jupyter Notebook
1934
VisPy - High-performance scientific visualization based on OpenGL.
Matplotlib - A Python 2D plotting library.
Pygal - A Python SVG Charts Creator.
PyGraphviz - Python interface to Graphviz.
PyQtGraph - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.

Database

2734
tinydb - A tiny, document-oriented database.
347
pickleDB - A simple and lightweight key-value store for Python.
301
ZODB - A native object database for Python. A key-value and object graph database.

Database Drivers

7242
redis-py - The Python client for Redis.
4863
PyMySQL - A pure Python MySQL driver compatible to mysql-python.
2861
kafka-python - The Python client for Apache Kafka.
2684
pymongo - The official Python client for MongoDB.
1392
mysqlclient - MySQL connector with Python 3 support (mysql-python fork).
1171
motor - The async Python driver for MongoDB.
1010
cassandra-driver - The Python Driver for Apache Cassandra.
448
happybase - A developer-friendly library for Apache HBase.
198
queries - A wrapper of the psycopg2 library for interacting with PostgreSQL.
118
txRedis - Twisted based client for Redis.
101
txpostgres - Twisted based asynchronous driver for PostgreSQL.
93
Telephus - Twisted based client for Cassandra.
psycopg2 - The most popular PostgreSQL adapter for Python.
pymssql - A simple database interface to Microsoft SQL Server.
py2neo - Python wrapper client for Neo4j's restful interface.

Date and Time

3183
Pendulum - Python datetimes made easy.
2842
maya - Datetimes for Humans, Maya is mostly built around the headaches and use-cases around parsing datetime data from websites.
1528
delorean - A library for clearing up the inconvenient truths that arise dealing with datetimes.
904
dateutil - Extensions to the standard Python datetime module.
564
moment - A Python library for dealing with dates/times. Inspired by Moment.js.
272
Chronyk - A Python 3 library for parsing human-written times and dates.
174
when.py - Providing user-friendly functions to help perform common date and time actions.
128
PyTime - A easy-use Python module which aims to operate date/time/datetime by string.
pytz - World timezone definitions, modern and historical. Brings the tz database into Python.

Debugging Tools

5300
django-debug-toolbar - Display various debug information for Django.
3611
py-spy - A sampling profiler for Python programs. Written in Rust.
3416
vprof - Visual Python profiler.
2844
profiling - An interactive Python profiler.
2660
line_profiler - Line-by-line profiling.
2109
pyflame - A ptracing profiler For Python.
1509
pyringe - Debugger capable of attaching to and injecting code into Python processes.
1364
wdb - An improbable web debugger through WebSockets.
1342
pudb - A full-screen, console-based Python debugger.
1247
django-devserver - A drop-in replacement for Django's runserver.
946
ipdb - IPython-enabled pdb.
817
icecream - Inspect variables, expressions, and program execution with a single, simple function call.
775
pyelftools - Parsing and analyzing ELF files and DWARF debugging information.
686
flask-debugtoolbar - A port of the django-debug-toolbar to flask.
633
lptrace - strace for Python programs.
356
python-hunter - A flexible code tracing toolkit.
206
manhole - Debug service that will accept unix domain socket connections and present the stacktraces for all threads and an interactive prompt.
134
pdb++ - Another drop-in replacement for pdb.
21
memory_profiler - Monitor Memory usage of Python code.

Deep Learning

123187
tensorflow - The most popular Deep Learning framework created by Google.
39168
keras - A high-level neural networks library and capable of running on top of either TensorFlow or Theano.
27448
caffe - A fast open framework for deep learning..
25895
pytorch - Tensors and Dynamic neural networks in Python with strong GPU acceleration.
16503
mxnet - A deep learning framework designed for both efficiency and flexibility.
8723
Theano - A library for fast numerical computation.
5073
SerpentAI - Game agent framework. Use any video game as a deep learning sandbox.

DevOps Tools

35974
ansible - A radically simple IT automation platform.
11076
fabric - A simple, Pythonic tool for remote execution and deployment.
9739
saltstack - Infrastructure automation and management system.
5155
supervisor - Supervisor process control system for UNIX.
4627
psutil - A cross-platform process and system utilities module.
1466
pexpect - Controlling interactive programs in a pseudo-terminal like GNU expect.
1237
cuisine - Chef-like functionality for Fabric.
1217
honcho - A Python clone of Foreman, for managing Procfile-based applications.
1182
fabtools - Tools for writing awesome Fabric files.
cloudinit - A multi-distribution package that handles early initialization of a cloud instance.
docker-compose - Fast, isolated development environments using Docker.
OpenStack - Open source software for building private and public clouds.

Distributed Computing

11125
luigi - A module that helps you build complex pipelines of batch jobs.
6243
Ray - A system for parallel and distributed Python that unifies the machine learning ecosystem.
4343
dask - A flexible parallel computing library for analytic computing.
2908
faust - A stream processing library, porting the ideas from Kafka Streams to Python.
2379
mrjob - Run MapReduce jobs on Hadoop or Amazon Web Services.
1363
streamparse - Run Python code against real-time streams of data via Apache Storm.
PySpark - Apache Spark Python API.

Distribution

5112
PyInstaller - Converts Python programs into stand-alone executables (cross-platform).
1271
dh-virtualenv - Build and distribute a virtualenv as a Debian package.
Nuitka - Compile scripts, modules, packages to an executable or extension module.
py2app - Freezes Python scripts (Mac OS X).
py2exe - Freezes Python scripts (Windows).
pynsist - A tool to build Windows installers, installers bundle Python itself.

Documentation

2437
sphinx - Python Documentation generator.
655
pycco - The literate-programming-style documentation generator.
567
pdoc - Epydoc replacement to auto generate API documentation for Python libraries.

Downloader

2940
s3cmd - A command line tool for managing Amazon S3 and CloudFront.
819
s4cmd - Super S3 command line tool, good for higher performance.
you-get - A YouTube/Youku/Niconico video downloader written in Python 3.
youtube-dl - A small command-line program to download videos from YouTube.

E-commerce

1790
django-shop - A Django based shop system.
912
merchant - A Django app to accept payments from various payment processors.
583
Cartridge - A shopping cart app built using the Mezzanine.
306
alipay - Unofficial Alipay API for Python.
223
forex-python - Foreign exchange rates, Bitcoin price index and currency conversion.
156
money - Money class with optional CLDR-backed locale-aware formatting and an extensible currency exchange solution.
37
python-currencies - Display money format and its filthy currencies.
django-oscar - An open-source e-commerce framework for Django.
saleor - An e-commerce storefront for Django.
shoop - An open source E-Commerce platform based on Django.

Editor Plugins and IDEs

18568
YouCompleteMe - Includes Jedi-based completion engine for Python.
4572
python-mode - An all in one plugin for turning Vim into a Python IDE.
4219
spyder - Open Source Python IDE.
3875
jedi-vim - Vim bindings for the Jedi auto-completion library for Python.
2122
PTVS - Python Tools for Visual Studio.
1934
anaconda - Anaconda turns your Sublime Text 3 in a full featured Python development IDE.
1376
elpy - Emacs Python Development Environment.
859
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.
PyCharm - Commercial Python IDE by JetBrains. Has free community edition available.

Email

3474
Nylas Sync Engine - Providing a RESTful API on top of a powerful email sync platform.
1444
inbox.py - Python SMTP Server for Humans.
1293
yagmail - Yet another Gmail/SMTP client.
1291
flanker - A email address and Mime parsing library.
1238
modoboa - A mail hosting and management platform including a modern and simplified Web UI.
825
imbox - Python IMAP for Humans.
662
lamson - Pythonic SMTP Application Server.
164
Marrow Mailer - High-performance extensible mail delivery framework.
envelopes - Mailing for human beings.

Environment Management

16219
pipenv - Sacred Marriage of Pipfile, Pip, & Virtualenv.
14657
pyenv - Simple Python version management.
3662
poetry - Python dependency management and packaging made easy.
venv - (Python standard library in Python 3.3+) Creating lightweight virtual environments.
virtualenv - A tool to create isolated Python environments.

Files

3387
watchdog - API and shell utilities to monitor file system events.
1305
python-magic - A Python interface to the libmagic file type identification library.
847
path.py - A module wrapper for os.path.
843
PyFilesystem2 - Python's filesystem abstraction layer.
478
Unipath - An object-oriented approach to file/directory operations.
mimetypes - (Python standard library) Map filenames to MIME types.
pathlib - (Python standard library) An cross-platform, object-oriented path library.

Foreign Function Interface

cffi - Foreign Function Interface for Python calling C code.
ctypes - (Python standard library) Foreign Function Interface for Python calling C code.
PyCUDA - A Python wrapper for Nvidia's CUDA API.
SWIG - Simplified Wrapper and Interface Generator.

Forms

3471
django-crispy-forms - A Django app which lets you create beautiful forms in a very elegant and DRY way.
2088
django-bootstrap3 - Bootstrap 3 integration with Django.
924
WTForms - A flexible forms validation and rendering library.
311
Deform - Python HTML form generation library influenced by the formish form generation library.
184
django-remote-forms - A platform independent Django form serializer.

Functional Programming

2798
fn.py - Functional programming in Python: implementation of missing features to enjoy FP.
2220
Toolz - A collection of functional utilities for iterators, functions, and dictionaries.
1993
funcy - A fancy and practical functional tools.
591
CyToolz - Cython implementation of Toolz: High performance functional utilities.
Coconut - Coconut is a variant of Python built for simple, elegant, Pythonic functional programming.

GUI

6551
Gooey - Turn command line programs into a full GUI application with one line.
2564
Eel - Little library for making simple Electron-like offline HTML/JS GUI apps, with full access to Python capabilities and libraries.
1926
Toga - A Python native, OS native GUI toolkit.
1281
pywebview - A lightweight cross-platform native wrapper around a webview component that allows to display HTML content in its own native dedicated window.
1254
PySimpleGUI - Wrapper for tkinter, Qt, WxPython and Remi that creates a unified, easy to understand & more Python-like interface for beginner and intermediate level custom GUIs.
728
enaml - Creating beautiful user-interfaces with Declaratic Syntax like QML.
curses - Built-in wrapper for ncurses used to create terminal GUI applications.
kivy - A library for creating NUI applications, running on Windows, Linux, Mac OS X, Android and iOS.
pyglet - A cross-platform windowing and multimedia library for Python.
PyGObject - Python Bindings for GLib/GObject/GIO/GTK+ (GTK+3).
PyQt - Python bindings for the Qt cross-platform application and UI framework, with support for both Qt v4 and Qt v5 frameworks.
PySide - Python bindings for the Qt cross-platform application and UI framework, supporting the Qt v4 framework.
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.
Flexx - Flexx is a pure Python toolkit for creating GUI's, that uses web technology for its rendering.

Game Development

Cocos2d - cocos2d is a framework for building 2D games, demos, and other graphical/interactive applications. It is based on pyglet.
Harfang3D - Python framework for 3D, VR and game development. Manage and display complex 3D scenes, with physics, video, sound and music, access VR devices. All written in C++.
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.
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.

Geolocation

2349
geopy - Python Geocoding Toolbox.
647
django-countries - A Django app that provides country choices for use with forms, flag icons static files, and a country field for models.
477
pygeoip - Pure Python GeoIP API.
399
geojson - Python bindings and utilities for GeoJSON.
185
GeoIP - Python API for MaxMind GeoIP Legacy Database.
GeoDjango - A world-class geographic web framework.

HTML Manipulation

3364
xmltodict - Working with XML feel like you are working with JSON.
1679
bleach - A whitelist-based HTML sanitization and text linkification library.
1664
pyquery - A jQuery-like library for parsing HTML.
760
html5lib - A standards-compliant library for parsing and serializing HTML documents and fragments.
388
untangle - Converts XML documents to Python objects for easy access.
249
MarkupSafe - Implements a XML/HTML/XHTML Markup safe string for Python.
BeautifulSoup - Providing Pythonic idioms for iterating, searching, and modifying HTML or XML.
cssutils - A CSS library for Python.
lxml - A very fast, easy-to-use and versatile library for handling HTML and XML.
WeasyPrint - A visual rendering engine for HTML and CSS that can export to PDF.
xmldataset - Simple XML Parsing.

HTTP

2936
grequests - requests + gevent for asynchronous HTTP requests.
1901
urllib3 - A HTTP library with thread-safe connection pooling, file post support, sanity friendly.
460
treq - Python requests like API built on top of Twisted's HTTP client.
296
httplib2 - Comprehensive HTTP client library.
requests - HTTP Requests for Humans™.

Hardware

3653
scapy - A brilliant packet manipulation library.
1340
keyboard - Hook and simulate global keyboard events on Windows and Linux.
817
PyUserInput - A module for cross-platform control of the mouse and keyboard.
238
wifi - A Python library and command line tool for working with WiFi on Linux.
164
mouse - Hook and simulate global mouse events on Windows and Linux.
ino - Command line toolkit for working with Arduino.
Pingo - Pingo provides a uniform API to program devices like the Raspberry Pi, pcDuino, Intel Galileo, etc.

Image Processing

6683
thumbor - A smart imaging service. It enables on-demand crop, re-sizing and flipping of images.
5944
pillow - Pillow is the friendly PIL fork.
1701
python-qrcode - A pure Python QR Code generator.
848
wand - Python bindings for MagickWand, C API for ImageMagick.
834
Quads - Computer art based on quadtrees.
632
nude.py - Nudity detection.
161
hmap - Image histogram remapping.
128
pagan - Retro identicon (Avatar) generation based on input string and hash.
imgSeek - A project for searching a collection of images using visual similarity.
pyBarcode - Create barcodes in Python without needing PIL.
scikit-image - A Python library for (scientific) image processing.
pygram - Instagram-like image filters.

Implementations

23031
CPython - Default, most widely used implementation of the Python programming language written in C.
9573
Grumpy - More compiler than interpreter as more powerful CPython2.7 replacement (alpha).
8125
MicroPython - MicroPython - a lean and efficient Python programming language implementation for microcontrollers and constrained systems
4474
Pyston - A Python implementation built using LLVM and modern JIT techniques with the goal of achieving good performance.
1252
Pyjion - A JIT for Python based upon CoreCLR.
1244
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.
831
IronPython - Implementation of the Python programming language written in C# targeting the .NET Framework and Mono.
326
PySec - Hardened version of python that makes it easier for security professionals and developers to write applications more resilient to attacks and manipulations.
267
CLPython - Implementation of the Python programming language written in Common Lisp.
Cython - Optimizing Static Compiler for Python. Uses type mixins to compile Python into C or C++ modules resulting in large performance gains
Jython - Implementation of Python programming language written in Java for the Java virtual machine (JVM).
Numba - Python JIT compiler 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.

Interactive Interpreter

3134
ptpython - Advanced Python REPL built on top of the python-prompt-toolkit.
1188
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.

Internationalization

86
PyICU - A wrapper of International Components for Unicode C++ library (ICU).
Babel - An internationalization library for Python.

Job Scheduler

5802
schedule - Python job scheduling for humans.
1068
Plan - Writing crontab file in Python like a charm.
736
django-schedule - A calendaring app for Django.
728
Spiff - A powerful workflow engine implemented in pure Python.
676
gunnery - Multipurpose task execution tool for distributed systems with web-based interface.
APScheduler - A light but powerful in-process task scheduler that lets you schedule functions.
doit - A task runner and build tool.
Joblib - A set of tools to provide lightweight pipelining in Python.
TaskFlow - A Python library that helps to make task execution easy, consistent and reliable.
Airflow - Airflow is a platform to programmatically author, schedule and monitor workflows.

Logging

1610
raven - Python client for Sentry, a log/error tracking, crash reporting and aggregation platform for web applications.
467
Eliot - Logging for complex & distributed systems.
logbook - Logging replacement for Python.
logging - (Python standard library) Logging facility for Python.

Machine Learning

15168
xgboost - A scalable, portable, and distributed gradient boosting library.
5842
NuPIC - Numenta Platform for Intelligent Computing.
3875
H2O - Open Source Fast Scalable Machine Learning Platform.
1087
Metrics - Machine learning evaluation metrics.
146
vowpal_porpoise - A lightweight Python wrapper for Vowpal Wabbit.
scikit-learn - The most popular Python library for Machine Learning.
Spark ML - Apache Spark's scalable Machine Learning library.

Microsoft Windows

1475
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.
PyWin32 - Python Extensions for Windows.
WinPython - Portable development environment for Windows 7/8.

Miscellaneous

4738
boltons - A set of pure-Python utilities.
1679
itsdangerous - Various helpers to pass trusted data to untrusted environments.
865
blinker - A fast Python in-process signal/event dispatching system.
778
pluginbase - A simple but flexible plugin system for Python.
tryton - A general purpose business framework.

Natural Language Processing

17639
jieba - The most popular Chinese text segmentation library.
8835
gensim - Topic Modelling for Humans.
6824
pattern - A web mining module for the Python.
6038
funNLP - A collection of tools and datasets for Chinese NLP.
4721
pytext - A natural language modeling framework based on PyTorch.
3886
snownlp - A library for processing Chinese text.
3224
pkuseg-python - A toolkit for Chinese word segmentation in various domains.
1621
stanfordnlp - The Stanford NLP Group's official Python library, supporting 50+ languages.
1248
langid.py - Stand-alone language identification system.
1213
PyTorch-NLP - A toolkit enabling rapid deep learning NLP prototyping for research.
1177
polyglot - Natural language pipeline supporting hundreds of languages.
nltk - A leading platform for building Python programs to work with human language data.
spacy - A library for industrial-strength natural language processing in Python and Cython.

Network Virtualization

2694
mininet - A popular network emulator and API written in Python.
425
pox - A Python-based SDN control applications, such as OpenFlow SDN controllers.

Networking

2115
pyzmq - A Python wrapper for the ZeroMQ message library.
1721
pulsar - Event-driven concurrent framework for Python.
1168
napalm - Cross-vendor API to manipulate network devices.
asyncio - (Python standard library) Asynchronous I/O, event loop, coroutines and tasks.
Twisted - An event-driven networking engine.

News Feed

3968
Stream Framework - Building newsfeed and notification systems using Cassandra and Redis.
1520
django-activity-stream - Generating generic activity streams from the actions on your site.

ORM

6229
peewee - A small, expressive ORM.
3471
dataset - Store Python dicts in a database - works with SQLite, MySQL, and PostgreSQL.
2661
mongoengine - A Python Object-Document-Mapper for working with MongoDB.
1743
pony - ORM that provides a generator-oriented interface to SQL.
865
PynamoDB - A Pythonic interface for Amazon DynamoDB.
843
orator - The Orator ORM provides a simple yet beautiful ActiveRecord implementation.
420
redisco - A Python Library for Simple Models and Containers Persisted in Redis.
256
pydal - A pure Python Database Abstraction Layer.
244
hot-redis - Rich Python data types for Redis.
Django Models - A part of Django.
SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper.

Package Management

3166
pip-tools - A set of tools to keep your pinned Python dependencies fresh.
2792
conda - Cross-platform, Python-agnostic binary package manager.
pip - The Python package and dependency manager.

Package Repositories

2090
warehouse - Next generation Python Package Repository (PyPI).
347
localshop - Local PyPI server (custom packages and auto-mirroring of pypi).
235
devpi - PyPI server and packaging/testing/release tool.

Permissions

2162
django-guardian - Implementation of per object permissions for Django 1.2+
834
django-rules - A tiny but powerful app providing object-level permissions to Django, without requiring a database.

Processes

4869
sh - A full-fledged subprocess replacement for Python.
1241
delegator.py - Subprocesses for Humans™ 2.0.
sarge - Yet another wrapper for subprocess.

Queue

5370
rq - Simple job queues for Python.
2149
huey - Little multi-threaded task queue.
737
mrq - Mr. Queue - A distributed worker task queue in Python using Redis & gevent.
celery - An asynchronous task queue/job queue based on distributed message passing.

Recommender Systems

5002
annoy - Approximate Nearest Neighbors in C++/Python optimized for memory usage.
2877
Surprise - A scikit for building and analyzing recommender systems.
2347
lightfm - A Python implementation of a number of popular recommendation algorithms.
1564
spotlight - Deep recommender models using PyTorch.
1369
implicit - A fast Python implementation of collaborative filtering for implicit datasets.
1140
libffm - A library for Field-aware Factorization Machine (FFM).
781
tensorrec - A Recommendation Engine Framework in TensorFlow.
707
fastFM - A library for Factorization Machines.

RESTful API

5625
hug - A Python3 framework for cleanly exposing APIs over HTTP and the Command Line with automatic documentation and validation.
5521
eve - REST API framework powered by Flask, MongoDB and good intentions.
5091
apistar - A smart Web API framework, designed for Python 3.
4512
flask-restful - Quickly building REST APIs for Flask.
2311
sandman - Automated REST APIs for existing database-driven systems.
965
flask-restless - Generating RESTful APIs for database models defined with SQLAlchemy.
737
restless - Framework agnostic REST framework based on lessons learned from Tastypie.
340
cornice - A RESTful framework for Pyramid.
188
ripozo - Quickly creating REST/HATEOAS/Hypermedia APIs.
47
flask-api-utils - Taking care of API representation and authentication for Flask.
django-rest-framework - A powerful and flexible toolkit to build web APIs.
django-tastypie - Creating delicious APIs for Django apps.
flask-api - Browsable Web APIs for Flask.
falcon - A high-performance framework for building cloud APIs and web app backends.

Robotics

4787
PythonRobotics - This is a compilation of various robotics algorithms with visualizations.
rospy - This is a library for ROS (Robot Operating System).

RPC Servers

2390
zeroRPC - zerorpc is a flexible RPC implementation based on ZeroMQ and MessagePack.
388
SimpleJSONRPCServer - This library is an implementation of the JSON-RPC specification.
SimpleXMLRPCServer - (Python standard library) Simple XML-RPC server implementation, single-threaded.

Science

8455
Zipline - A Pythonic algorithmic trading library.
5648
SymPy - A Python library for symbolic mathematics.
4035
PyMC - Markov Chain Monte Carlo sampling toolkit.
3709
statsmodels - Statistical modeling and econometrics in Python.
659
bcbio-nextgen - Providing best-practice pipelines for fully automated high throughput sequencing analysis.
438
bccb - Collection of useful code related to biological analysis.
astropy - A community Python library for Astronomy.
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 - A colour science package implementing a comprehensive number of colour theory transformations and algorithms.
NetworkX - A high-productivity software for complex networks.
NIPY - A collection of neuroimaging toolkits.
NumPy - A fundamental package for scientific computing with Python.
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.
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.
SimPy - A process-based discrete-event simulation framework.
ObsPy - A Python toolbox for seismology.
2660
django-haystack - Modular search for Django.
2286
elasticsearch-dsl-py - The official high-level Python client for Elasticsearch.
491
pysolr - A lightweight Python wrapper for Apache Solr.
elasticsearch-py - The official low-level Python client for Elasticsearch.
whoosh - A fast, pure Python search engine library.

Serialization

3395
marshmallow - A lightweight library for converting complex objects to and from simple Python datatypes.
272
python-rapidjson - A Python wrapper around RapidJSON.
123
pysimdjson - A Python bindings for simdjson.

Serverless Frameworks

8783
Zappa - A tool for deploying WSGI applications on AWS Lambda and API Gateway.
884
python-lambda - A toolkit for developing and deploying Python code in AWS Lambda.

Specific Formats Processing

3697
csvkit - Utilities for converting to and working with CSV.
3384
PDFMiner - A tool for extracting information from PDF documents.
3361
tablib - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
2391
PyPDF2 - A library capable of splitting, merging and transforming PDF pages.
1769
XlsxWriter - A Python module for creating Excel .xlsx files.
1669
Python-Markdown - A Python implementation of John Gruber’s Markdown.
1583
python-docx - Reads, queries and modifies Microsoft Word 2007/2008 docx files.
1493
unoconv - Convert between any document format supported by LibreOffice/OpenOffice.
1428
Mistune - Fastest and full featured pure Python parsers of Markdown.
1289
xlwings - A BSD-licensed library that makes it easy to call Python from Excel and vice versa.
859
xlwt / xlrd - Writing and reading data and formatting information from Excel files.
750
python-pptx - Python library for creating and updating PowerPoint (.pptx) files.
620
pyexcel - Providing one API for reading, manipulating and writing csv, ods, xls, xlsx and xlsm files.
340
unp - A command line tool that can unpack archives easily.
openpyxl - A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
ReportLab - Allowing Rapid creation of rich PDF documents.
PyYAML - YAML implementations for Python.

Static Site Generator

8639
pelican - Static site generator that supports Markdown and reST syntax.
7320
mkdocs - Markdown friendly documentation generator.
2999
lektor - An easy to use static CMS and blog engine.
1652
nikola - A static website and blog generator.

Tagging

2067
django-taggit - Simple tagging for Django.

Template Engine

5940
Jinja2 - A modern and designer friendly templating language.
Genshi - Python templating toolkit for generation of web-aware output.
Mako - Hyperfast and lightweight templating for the Python platform.

Testing

9560
locust - Scalable user load testing tool written in Python.
7535
faker - A Python package that generates fake data.
3343
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.
3307
hypothesis - Hypothesis is an advanced Quickcheck style property based testing library.
3131
Robot Framework - A generic test automation framework.
2508
PyAutoGUI - PyAutoGUI is a cross-platform GUI automation Python module for human beings.
2306
mimesis - is a Python library that help you generate fake data.
2252
responses - A utility library for mocking out the requests Python library.
1976
splinter - Open source tool for testing web applications.
1944
fake2db - Fake database generator.
1847
freezegun - Travel through time by mocking the datetime module.
1719
factory_boy - A test fixtures replacement for Python.
1669
httpretty - HTTP request mock tool for Python.
1545
sixpack - A language-agnostic A/B Testing framework.
1366
VCR.py - Record and replay HTTP interactions on your tests.
885
model_mommy - Creating random fixtures for testing in Django.
592
green - A clean, colorful test runner.
584
mixer - Another fixtures replacement. Supported Django, Flask, SQLAlchemy, Peewee and etc.
535
nose2 - The successor to nose, based on `unittest2.
364
httmock - A mocking library for requests for Python 2.6+ and 3.2+.
142
Mocket - Socket Mock Framework plus HTTP[S]/asyncio/gevent mocking library with recording/replaying capability.
pytest - A mature full-featured Python testing tool.
unittest - (Python standard library) Unit testing framework.
mamba - The definitive testing tool for Python. Born under the banner of BDD.
tox - Auto builds and tests distributions in multiple Python versions
Selenium - Python bindings for Selenium WebDriver.
doublex - Powerful test doubles framework for Python.
mock - (Python standard library) A mocking and patching library.
coverage - Code coverage measurement.
radar - Generate random datetime / time.

Text Processing

5339
fuzzywuzzy - Fuzzy String Matching.
2413
ftfy - Makes Unicode text less broken and more consistent automagically.
2103
python-phonenumbers - Parsing, formatting, storing and validating international phone numbers.
1691
pypinyin - Convert Chinese hanzi (漢字) to pinyin (拼音).
1547
sqlparse - A non-validating SQL parser.
1327
textdistance - Compute distance between sequences. 30+ algorithms, pure python implementation, common interface, optional external libs usage.
1291
ply - Implementation of lex and yacc parsing tools for Python.
1088
chardet - Python 2/3 compatible character encoding detector.
1033
shortuuid - A generator library for concise, unambiguous and URL-safe UUIDs.
897
hashids - Implementation of hashids in Python.
863
python-user-agents - Browser user agent parser.
645
python-slugify - A Python slugify library that translates unicode to ASCII.
589
Levenshtein - Fast computation of Levenshtein distance and string similarity.
417
pyfiglet - An implementation of figlet written in Python.
416
awesome-slugify - A Python slugify library that can preserve unicode.
313
python-nameparser - Parsing human names into their individual components.
279
unicode-slugify - A slugifier that generates unicode slugs with Django as a dependency.
224
pyparsing - A general purpose framework for generating parsers.
94
pangu.py - Paranoid text spacing.
difflib - (Python standard library) Helpers for computing deltas.
unidecode - ASCII transliterations of Unicode text.
pygments - A generic syntax highlighter.

Third-party APIs

4254
boto3 - Python interface to Amazon Web Services.
3927
gspread - Google Spreadsheets Python API.
2532
google-api-python-client - Google APIs Client Library for Python.
2391
facebook-sdk - Facebook Platform Python SDK.
1606
twython - A Python wrapper for the Twitter API.
285
django-wordpress - WordPress models and views for Django.
apache-libcloud - One Python library for all clouds.

URL Manipulation

1537
furl - A small Python library that makes parsing and manipulating URLs easy.
768
webargs - A friendly library for parsing HTTP request arguments, with built-in support for popular web frameworks, including Flask, Django, Bottle, Tornado, and Pyramid.
225
purl - A simple, immutable URL class with a clean API for interrogation and manipulation.
222
pyshorteners - A pure Python URL shortening lib.

Video

88
scikit-video - Video processing routines for SciPy.
moviepy - A module for script-based movie editing with many formats, including animated GIFs.

WSGI Servers

5648
gunicorn - Pre-forked, partly written in C.
4603
werkzeug - A WSGI utility library for Python that powers Flask and can easily be embedded into your own projects.
1870
bjoern - Asynchronous, very fast and written in C.
525
waitress - Multi-threaded, powers Pyramid.
uWSGI - A project aims at developing a full stack for building hosting services, written in C.

Web Asset Management

2161
django-compressor - Compresses linked and inline JavaScript or CSS into a single cached file.
1298
django-pipeline - An asset packaging library for Django.
1160
django-storages - A collection of custom storage back ends for Django.
857
webassets - Bundles, optimizes, and manages unique cache-busting URLs for static resources.
367
flask-assets - Helps you integrate webassets into your Flask app.
fanstatic - Packages, optimizes, and serves static file dependencies as Python packages.
fileconveyor - A daemon to detect and sync files to CDNs, S3 and FTP.

Web Content Extracting

9211
requests-html - Pythonic HTML Parsing for Humans.
7777
newspaper - News extraction, article extraction and content curation in Python.
2777
toapi - Every web site provides APIs.
2458
textract - Extract text from any document, Word, PowerPoint, PDFs, etc.
1851
sumy - A module for automatic summarization of text documents and HTML pages.
1588
python-readability - Fast Python port of arc90's readability tool.
652
html2text - Convert HTML to Markdown-formatted text.
454
lassie - Web Content Retrieval for Humans.
427
micawber - A small library for extracting rich content from URLs.

Web Crawling & Web Scraping

12849
pyspider - A powerful spider system.
6797
portia - Visual scraping for Scrapy.
3266
robobrowser - A simple, Pythonic library for browsing the web without a standalone web browser.
3147
MechanicalSoup - A Python library for automating interaction with websites.
1703
grab - Site scraping framework.
1340
cola - A distributed crawling framework.
feedparser - Universal feed parser.
scrapy - A fast high-level screen scraping and web crawling framework.

Web Frameworks

11626
Sanic - Web server that's written to go fast.
Django - The most popular web framework in Python.
Flask - A microframework for Python.
Pyramid - A small, fast, down-to-earth, open source Python web framework.
Vibora - Fast, efficient and asynchronous Web framework inspired by Flask.
Tornado - A Web framework and asynchronous networking library.

WebSocket

3653
django-channels - Developer-friendly asynchrony for Django.
1970
autobahn-python - WebSocket & WAMP for Python on Twisted and asyncio.
1621
crossbar - Open-source Unified Application Router (Websocket & WAMP for Python on Autobahn).
1173
django-socketio - WebSockets for Django.
1028
WebSocket-for-Python - WebSocket client and server library for Python 2 and 3 as well as PyPy.

Continuous Integration

CircleCI - A CI service that can run very fast parallel testing. (GitHub only)
Travis CI - A popular CI service for your open source and private projects. (GitHub only)
Vexor CI - A continuous integration tool for private apps with pay-per-minute billing model.
Wercker - A Docker-based platform for building and deploying applications and microservices.

Code Quality

Codacy - Automated Code Review to ship better code, faster.
Codecov - Code coverage dashboard.
CodeFactor - Automated Code Review for Git.
Landscape - Hosted continuous Python code metrics.

Podcasts

Twitter

Websites

Weekly

Комментарии

comments powered by Disqus