fucking_awesome_python
awesome-python with :octocat: :star: and :fork_and_knife:
https://github.com/htlcnn/fucking_awesome_python
Last synced: 5 days ago
JSON representation
-
Processes
- envoy - Python [:earth_americas: subprocess](https://docs.python.org/2/library/subprocess.html) for Humans™.
- sh - A full-fledged subprocess replacement for Python.
- :earth_americas: sarge - Yet another wrapper for subprocess.
-
Text Processing
- :earth_americas: pyparsing - A general purpose framework for generating parsers.
- :octocat: uniout - :star: 100 :fork_and_knife: 10 - Print readable chars instead of the escaped string.
- :earth_americas: difflib - (Python standard library) Helpers for computing deltas.
- :earth_americas: PLY - Implementation of lex and yacc parsing tools for Python
- :octocat: python-user-agents - :star: 379 :fork_and_knife: 84 - Browser user agent parser.
- :earth_americas: PLY - Implementation of lex and yacc parsing tools for Python
- :octocat: chardet - :star: 561 :fork_and_knife: 81 - Python 2/3 compatible character encoding detector.
- :octocat: ftfy - :star: 1399 :fork_and_knife: 52 - Makes Unicode text less broken and more consistent automagically.
- :octocat: fuzzywuzzy - :star: 2581 :fork_and_knife: 265 - Fuzzy String Matching.
- :octocat: Levenshtein - :star: 227 :fork_and_knife: 42 - Fast computation of Levenshtein distance and string similarity.
- :octocat: pangu.py - :star: 42 :fork_and_knife: 7 - Spacing texts for CJK and alphanumerics.
- :octocat: pyfiglet - :star: 158 :fork_and_knife: 19 - An implementation of figlet written in Python.
- :octocat: shortuuid - :star: 605 :fork_and_knife: 49 - A generator library for concise, unambiguous and URL-safe UUIDs.
- :octocat: xpinyin - :star: 352 :fork_and_knife: 99 - A library to translate Chinese hanzi (漢字) to pinyin (拼音).
- :octocat: python-nameparser - :star: 156 :fork_and_knife: 26 - Parsing human names into their individual components.
- :octocat: sqlparse - :star: 695 :fork_and_knife: 172 - A non-validating SQL parser.
- :octocat: awesome-slugify - :star: 292 :fork_and_knife: 18 - A Python slugify library that can preserve unicode.
- :octocat: python-slugify - :star: 276 :fork_and_knife: 33 - A Python slugify library that translates unicode to ASCII.
- :octocat: unicode-slugify - :star: 208 :fork_and_knife: 38 - A slugifier that generates unicode slugs with Django as a dependency.
- :octocat: phonenumbers - :star: 1265 :fork_and_knife: 166 - Parsing, formatting, storing and validating international phone numbers.
-
HTTP
-
Web Frameworks
- :earth_americas: Django - The most popular web framework in Python.
- :earth_americas: web2py - A full stack web framework and platform focused in the ease of use.
- awesome-flask
- :earth_americas: web.py - A web framework for Python that is as simple as it is powerful.
- :earth_americas: CherryPy - A minimalist Python web framework, HTTP/1.1-compliant and WSGI thread-pooled.
- awesome-pyramid
- :earth_americas: web2py - A full stack web framework and platform focused in the ease of use.
- awesome-django
- :earth_americas: Flask - A microframework 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 [:earth_americas: AWS Lambda](https://aws.amazon.com/lambda/) functions with ease.
-
URL Manipulation
- furl - A small Python library that makes manipulating URLs simple.
- 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.
- purl - A simple, immutable URL class with a clean API for interrogation and manipulation.
- pyshorteners - A pure Python URL shortening lib.
-
HTML Manipulation
- bleach - A whitelist-based HTML sanitization and text linkification library.
- :earth_americas: xmldataset - Simple XML Parsing.
- html5lib - A standards-compliant library for parsing and serializing HTML documents and fragments.
- MarkupSafe - Implements a XML/HTML/XHTML Markup safe string for Python.
- pyquery - A jQuery-like library for parsing HTML.
- untangle - Converts XML documents to Python objects for easy access.
- xhtml2pdf - HTML/CSS to PDF converter.
- xmltodict - Working with XML feel like you are working with JSON.
- :earth_americas: BeautifulSoup - Providing Pythonic idioms for iterating, searching, and modifying HTML or XML.
-
Static Site Generator
- :earth_americas: Tinkerer - Tinkerer is a blogging engine/.static website generator powered by Sphinx.
- :earth_americas: Lektor - An easy to use static CMS and blog engine.
- :earth_americas: Hyde - Jinja2-based static web site generator.
- :earth_americas: Nikola - A static website and blog generator.
- :earth_americas: Hyde - Jinja2-based static web site generator.
-
Data Visualization
- :earth_americas: matplotlib - A Python 2D plotting library.
- bokeh - Interactive Web Plotting for Python.
- pygraphviz - Python interface to [:earth_americas: Graphviz](http://www.graphviz.org/).
- awesome-javascript
- :earth_americas: PyQtGraph - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.
- vincent - A Python to Vega translator.
- :earth_americas: SnakeViz - A browser based graphical viewer for the output of Python's cProfile module.
-
Job Scheduler
- :earth_americas: Joblib - A set of tools to provide lightweight pipelining in Python.
- Plan - Writing crontab file in Python like a charm.
- :earth_americas: APScheduler - A light but powerful in-process task scheduler that lets you schedule functions.
- django-schedule - A calendaring app for Django.
- gunnery - Multipurpose task execution tool for distributed systems with web-based interface.
- schedule - Python job scheduling for humans.
- Spiff - A powerful workflow engine implemented in pure Python.
-
Foreign Function Interface
- :earth_americas: ctypes - (Python standard library) Foreign Function Interface for Python calling C code.
- :earth_americas: PyCUDA - A Python wrapper for Nvidia's CUDA API.
- :earth_americas: SWIG - Simplified Wrapper and Interface Generator.
- :earth_americas: cffi - Foreign Function Interface for Python calling C code.
-
High Performance
- :earth_americas: Stackless Python - An enhanced version of the Python.
- 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.
-
Microsoft Windows
- PythonNet - Python Integration with the .NET Common Language Runtime (CLR).
- :earth_americas: PyWin32 - Python Extensions for Windows.
- :earth_americas: WinPython - Portable development environment for Windows 7/8.
- :earth_americas: Python(x,y) - Scientific-applications-oriented Python Distribution based on Qt and Spyder.
- :earth_americas: Python(x,y) - Scientific-applications-oriented Python Distribution based on Qt and Spyder.
- :earth_americas: pythonlibs - Unofficial Windows binaries for Python extension packages.
-
Network Virtualization and SDN
- SDX Platform - SDN based IXP implementation that leverages Mininet, POX and Pyretic.
- :earth_americas: Mininet - A popular network emulator and API written in Python.
- :earth_americas: Pyretic - A member of the Frenetic family of SDN programming languages that provides powerful abstractions over network switches or emulators.
- :earth_americas: Mininet - A popular network emulator and API written in Python.
- POX - An open source development platform for Python-based Software Defined Networking (SDN) control applications, such as OpenFlow SDN controllers.
- :earth_americas: Pyretic - A member of the Frenetic family of SDN programming languages that provides powerful abstractions over network switches or emulators.
-
Debugging Tools
- line_profiler - Line-by-line profiling.
- memory_profiler - Monitor Memory usage of Python code.
- profiling - An interactive Python profiler.
- :earth_americas: winpdb - A Python Debugger with GUI, capable of remote debugging based on `rpdb2`.
- wdb - An improbable web debugger through WebSockets.
- pyelftools - Parsing and analyzing ELF files and DWARF debugging information.
- python-statsd - Python Client for the [statsd](https://github.com/etsy/statsd/) server.
- django-devserver - A drop-in replacement for Django's runserver.
- pyringe - Debugger capable of attaching to and injecting code into Python processes.
-
Podcasts
-
Package Repositories
- Warehouse
- :octocat: warehouse - :star: 675 :fork_and_knife: 146 - Next generation Python Package Repository (PyPI).
- :octocat: localshop - :star: 279 :fork_and_knife: 99 - Local PyPI server (custom packages and auto-mirroring of pypi).
- :earth_americas: devpi - PyPI server and packaging/testing/release tool.
-
Distribution
- :earth_americas: pynsist - A tool to build Windows installers, installers bundle Python itself.
- :earth_americas: py2exe - Freezes Python scripts (Windows).
- :octocat: PyInstaller - :star: 1966 :fork_and_knife: 465 - Converts Python programs into stand-alone executables (cross-platform).
- :octocat: dh-virtualenv - :star: 857 :fork_and_knife: 90 - Build and distribute a virtualenv as a Debian package.
-
RESTful API
- cornice - A RESTful framework for Pyramid.
- :earth_americas: django-tastypie - Creating delicious APIs for Django apps.
- restless - Framework agnostic REST framework based on lessons learned from Tastypie.
- eve - REST API framework powered by Flask, MongoDB and good intentions.
- hug - A Python3 framework for cleanly exposing APIs over HTTP and the Command Line with automatic documentation and validation.
- sandman - Automated REST APIs for existing database-driven systems.
- ripozo - Quickly creating REST/HATEOAS/Hypermedia APIs.
- :earth_americas: django-tastypie - Creating delicious APIs for Django apps.
- django-formapi - Create JSON APIs with Django's form validation.
- :earth_americas: flask-api - Browsable Web APIs for Flask.
- flask-restful - Quickly building REST APIs for Flask.
- flask-restless - Generating RESTful APIs for database models defined with SQLAlchemy.
- flask-api-utils - Taking care of API representation and authentication for Flask.
- :earth_americas: falcon - A high-performance framework for building cloud APIs and web app backends.
-
Search
- esengine - ElasticSearch ODM (Object Document Mapper) for Python.
- :earth_americas: Whoosh - A fast, pure Python search engine library.
- elasticsearch-py - The official low-level Python client for [:earth_americas: Elasticsearch](https://www.elastic.co/products/elasticsearch).
- elasticsearch-dsl-py - The official high-level Python client for Elasticsearch.
- elasticsearch-py - The official low-level Python client for [:earth_americas: Elasticsearch](https://www.elastic.co/products/elasticsearch).
- django-haystack - Modular search for Django.
-
Caching
- :earth_americas: dogpile.cache - dogpile.cache is next generation replacement for Beaker made by same authors.
- 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.
- django-cacheops - A slick ORM cache with automatic granular event-driven invalidation.
- django-viewlet - Render template parts with extended cache control.
- pylibmc - A Python wrapper around the [:earth_americas: libmemcached](http://libmemcached.org/libMemcached.html) interface.
-
Data Validation
- Cerberus - A lightweight and extensible data validation library.
- voluptuous - A Python data validation library.
- valideer - Lightweight extensible data validation and adaptation library.
- Schematics - Data Structure Validation.
- schema - A library for validating Python data structures.
- jsonschema - An implementation of [:earth_americas: JSON Schema](http://json-schema.org/) for Python.
-
WSGI Servers
- :earth_americas: uwsgi - A project aims at developing a full stack for building hosting services, written in C.
- :earth_americas: waitress - Multi-threaded, poweres Pyramid.
- :earth_americas: fapws3 - Asynchronous (network side only), written in C.
- :earth_americas: fapws3 - Asynchronous (network side only), written in C.
- :earth_americas: paste - Multi-threaded, stable, tried and tested.
- netius - Asynchronous, very fast.
-
Game Development
- :earth_americas: PySDL2 - A ctypes based wrapper for the SDL2 library.
- :earth_americas: Panda3D - 3D game engine developed by Disney and maintained by Carnegie Mellon's Entertainment Technology Center. Written in C++, completely wrapped in Python.
- :earth_americas: Cocos2d - cocos2d is a framework for building 2D games, demos, and other graphical/interactive applications. It is based on pyglet.
- :earth_americas: Pygame - Pygame is a set of Python modules designed for writing games.
- :earth_americas: Pygame - Pygame is a set of Python modules designed for writing games.
- :earth_americas: RenPy - A Visual Novel engine.
-
Logging
- Eliot - Logging for complex & distributed systems.
- Raven - The Python client for Sentry.
- :earth_americas: Sentry - A realtime logging and aggregation server.
- :earth_americas: logging - (Python standard library) Logging facility for Python.
-
DevOps Tools
- :earth_americas: Cloud-Init - A multi-distribution package that handles early initialization of a cloud instance.
- Fabtools - Tools for writing awesome Fabric files.
- honcho - A Python clone of [Foreman](https://github.com/ddollar/foreman), for managing Procfile-based applications.
- supervisor - Supervisor process control system for UNIX.
- cuisine - Chef-like functionality for Fabric.
- pexpect - Controlling interactive programs in a pseudo-terminal like GNU expect.
- psutil - A cross-platform process and system utilities module.
- Ansible - A radically simple IT automation platform.
- SaltStack - Infrastructure automation and management system.
- Docker Compose - Fast, isolated development environments using [:earth_americas: Docker](https://www.docker.com/).
-
Configuration
- :octocat: python-decouple - :star: 263 :fork_and_knife: 22 - Strict separation of settings from code.
- :earth_americas: ConfigObj - INI file parser with validation.
- :earth_americas: ConfigParser - (Python standard library) INI file parser.
-
Command-line Tools
- :octocat: asciimatics - :star: 320 :fork_and_knife: 15 - 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.
- httpie - A command line HTTP client, a user-friendly cURL replacement.
- :earth_americas: colorama - Cross-platform colored terminal text.
- aws-cli - A universal command-line interface for Amazon Web Services.
- PathPicker - Select files out of bash output.
- percol - Adds flavor of interactive selection to the traditional pipe concept on UNIX.
- SAWS - A Supercharged AWS CLI.
- thefuck - Correcting your previous console command.
- try - A dead simple CLI to try out python packages - It's never been easier.
- mycli - A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.
- pgcli - Postgres CLI with autocompletion and syntax highlighting.
- :earth_americas: docopt - Pythonic command line arguments parser.
- :octocat: Gooey - :star: 4169 :fork_and_knife: 212 - Turn command line programs into a full GUI application with one line
- caniusepython3 - Determine what projects are blocking you from porting to Python 3.
- cookiecutter - A command-line utility that creates projects from cookiecutters (project templates).
- :earth_americas: docopt - Pythonic command line arguments parser.
- bashplotlib - Making basic plots in the terminal.
- :earth_americas: cement - CLI Application Framework for Python.
- :octocat: clint - :star: 2054 :fork_and_knife: 188 - Python Command-line Application Tools.
- doitlive - A tool for live presentations in the terminal.
- howdoi - Instant coding answers via the command line.
-
Downloader
-
Imagery
- :earth_americas: imgSeek - A project for searching a collection of images using visual similarity.
- python-qrcode - A pure Python QR Code generator.
- Quads - Computer art based on quadtrees.
- thumbor - A smart imaging service. It enables on-demand crop, re-sizing and flipping of images.
- :earth_americas: scikit-image - A Python library for (scientific) image processing.
- :earth_americas: pyBarcode - Create barcodes in Python without needing PIL.
- pygram - Instagram-like image filters.
- wand - Python bindings for [:earth_americas: MagickWand](http://www.imagemagick.org/script/magick-wand.php), C API for ImageMagick.
- pillow - Pillow is the friendly [:earth_americas: PIL](http://www.pythonware.com/products/pil/) fork.
- hmap - Image histogram remapping.
- nude.py - Nudity detection.
-
OCR
- pytesseract - Another wrapper for [Google Tesseract OCR](https://github.com/tesseract-ocr).
-
Audio
- audiolazy - Expressive Digital Signal Processing (DSP) package for Python.
- audioread - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.
- tinytag - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
- :earth_americas: id3reader - A Python module for reading MP3 meta data.
- m3u8 - A module for parsing m3u8 file.
- :earth_americas: mingus - An advanced music theory and notation package with MIDI file and playback support.
- pydub - Manipulate audio with a simple and easy high level interface.
- pyechonest - Python client for the [:earth_americas: Echo Nest](http://developer.echonest.com/) API.
- TimeSide - Open web audio processing framework.
- dejavu - Audio fingerprinting and recognition.
- django-elastic-transcoder - Django + [:earth_americas: Amazon Elastic Transcoder](http://aws.amazon.com/elastictranscoder/).
-
Geolocation
- django-countries - A Django app that provides country choices for use with forms, flag icons static files, and a country field for models.
- geopy - Python Geocoding Toolbox.
- :earth_americas: GeoDjango - A world-class geographic web framework.
- GeoIP - Python API for MaxMind GeoIP Legacy Database.
- pygeoip - Pure Python GeoIP API.
-
Database
- :earth_americas: pickleDB - A simple and lightweight key-value store for Python.
- TinyDB - A tiny, document-oriented database.
- :earth_americas: PipelineDB - The Streaming SQL Database.
-
Database Drivers
- pycassa - Python Thrift driver for Cassandra.
- :earth_americas: PyMongo - The official Python client for MongoDB.
- telephus - Twisted based client for Cassandra.
- txRedis - Twisted based client for Redis.
- awesome-mysql
- queries - A wrapper of the psycopg2 library for interacting with PostgreSQL.
- txpostgres - Twisted based asynchronous driver for PostgreSQL.
- cassandra-python-driver - Python driver for Cassandra.
- :earth_americas: pymssql - A simple database interface to Microsoft SQL Server.
- dataset - Store Python dicts in a database - works with SQLite, MySQL, and PostgreSQL.
- :earth_americas: pymssql - A simple database interface to Microsoft SQL Server.
- HappyBase - A developer-friendly library for Apache HBase.
- Plyvel - A fast and feature-rich Python interface to LevelDB.
- :earth_americas: mysql-python - The MySQL database connector for Python.
- :earth_americas: oursql - A better MySQL connector with support for native prepared statements and BLOBs.
- PyMySQL - Pure Python MySQL driver compatible to mysql-python.
- :earth_americas: psycopg2 - The most popular PostgreSQL adapter for Python.
- mysqlclient - mysql-python fork supporting Python 3.
-
ORM
- awesome-sqlalchemy
- flywheel - Object mapper for Amazon DynamoDB.
- hot-redis - Rich Python data types for Redis.
- redisco - A Python Library for Simple Models and Containers Persisted in Redis.
- butterdb - A Python ORM for Google Drive Spreadsheets.
- Peewee - A small, expressive ORM.
- django-mongodb-engine - Django MongoDB Backend.
- :earth_americas: MongoEngine - A Python Object-Document-Mapper for working with MongoDB.
- :earth_americas: Django Models - A part of Django.
- :earth_americas: PonyORM - ORM that provides a generator-oriented interface to SQL.
- :earth_americas: MongoEngine - A Python Object-Document-Mapper for working with MongoDB.
-
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.
-
CMS
- :earth_americas: djedi-cms - A lightweight but yet powerful Django CMS with plugins, inline editing and performance in mind.
- :earth_americas: Plone - A CMS built on top of the open source application server Zope.
- :earth_americas: Widgy - Last CMS framework, based on Django.
- :earth_americas: Opps - A Django-based CMS for magazines, newspapers websites and portals with high-traffic.
- :earth_americas: Quokka - Flexible, extensible, small CMS powered by Flask and MongoDB.
- :earth_americas: djedi-cms - A lightweight but yet powerful Django CMS with plugins, inline editing and performance in mind.
- :earth_americas: Mezzanine - A powerful, consistent, and flexible content management platform.
- :earth_americas: Wagtail - A Django content management system.
-
E-commerce
- django-shop - A Django based shop system.
- Cartridge - A shopping cart app built using the Mezzanine.
- :earth_americas: shoop - An open source E-Commerce platform based on Django.
- alipay - Unofficial Alipay API for Python.
- 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.
- python-currencies - Display money format and its filthy currencies.
-
Authentication
- django-allauth - Authentication app for Django that "just works."
- sanction - A dead simple OAuth2 client implementation.
- python-jws - Implementation of JSON Web Signatures draft 02.
- python-jwt - Module for generating and verifying JSON Web Tokens.
- jose - JavaScript Object Signing and Encryption draft implementation.
- PyJWT - Implementation of the JSON Web Token draft 01.
- django-oauth2-provider - Providing OAuth2 access to Django app.
- Flask-OAuthlib - OAuth 1.0/a, 2.0 implementation of client and provider for Flask.
- python-oauth2 - A fully tested, abstract interface to creating OAuth clients and servers.
- python-social-auth - An easy-to-setup social authentication mechanism.
- rauth - A Python library for OAuth 1.0/a, 2.0, and Ofly.
-
Template Engine
- :earth_americas: Genshi - Python templating toolkit for generation of web-aware output.
- Jinja2 - A modern and designer friendly templating language.
-
Queue
-
Email
- flanker - A email address and Mime parsing library.
- inbox.py - Python SMTP Server for Humans.
- yagmail - Yet another Gmail/SMTP client.
- imbox - Python IMAP for Humans.
- lamson - Pythonic SMTP Application Server.
- Marrow Mailer - High-performance extensible mail delivery framework.
- modoboa - A mail hosting and management platform including a modern and simplified Web UI.
- Nylas Sync Engine - Providing a RESTful API on top of a powerful email sync platform.
- :earth_americas: envelopes - Mailing for human beings.
-
Internationalization
- PyICU - A wrapper of International Components for Unicode C++ library ([:earth_americas: ICU](http://site.icu-project.org/)).
- :earth_americas: Babel - An internationalization library for Python.
-
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.
- cola - A distributed crawling framework.
- Demiurge - PyQuery-based scraping micro-framework.
- MechanicalSoup - A Python library for automating interaction with websites.
- :earth_americas: Grab - Site scraping framework.
-
Web Content Extracting
- Haul - An Extensible Image Crawler.
- html2text - Convert HTML to Markdown-formatted text.
- lassie - Web Content Retrieval for Humans.
- micawber - A small library for extracting rich content from URLs.
- opengraph - A Python module to parse the Open Graph Protocol
- newspaper - News extraction, article extraction and content curation in Python.
- python-goose - HTML Content/Article Extractor.
- python-readability - Fast Python port of arc90's readability tool.
- sanitize - Bringing sanity to world of messed-up data.
- sumy - A module for automatic summarization of text documents and HTML pages.
- textract - Extract text from any document, Word, PowerPoint, PDFs, etc.
-
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.
-
Admin Panels
- django-xadmin - Drop-in replacement of Django admin comes with lots of goodies.
- flask-admin - Simple and extensible administrative interface framework for Flask.
- Wooey - A Django app which creates automatic web UIs for Python scripts.
- Ajenti - The admin panel your servers deserve.
- flower - Real-time monitor and web admin for Celery.
-
Concurrency and Parallelism
- Tomorrow - Magic decorator syntax for asynchronous code.
- :earth_americas: eventlet - Asynchronous framework with WSGI support.
- :earth_americas: multiprocessing - (Python standard library) Process-based "threading" interface.
- :earth_americas: threading - (Python standard library) Higher-level threading interface.
- :earth_americas: eventlet - Asynchronous framework with WSGI support.
- gevent - A coroutine-based Python networking library that uses [greenlet](https://github.com/python-greenlet/greenlet).
-
RPC Servers
- zeroRPC - zerorpc is a flexible RPC implementation based on [ZeroMQ](http://zeromq.org/) and [:earth_americas: MessagePack](http://msgpack.org/).
- :earth_americas: SimpleXMLRPCServer - (Python standard library) Simple XML-RPC server implementation, single-threaded.
-
Cryptography
- :earth_americas: cryptography - A package designed to expose cryptographic primitives and recipes to Python developers.
- hashids - Implementation of [:earth_americas: hashids](http://hashids.org) in Python.
- PyNacl - Python binding to the Networking and Cryptography (NaCl) library.
- :earth_americas: Passlib - Secure password storage/hashing library, very high level.
-
GUI
- curses - Built-in wrapper for [:earth_americas: ncurses](http://www.gnu.org/software/ncurses/) used to create terminal GUI applications.
- enaml - Creating beautiful user-interfaces with Declaratic Syntax like QML.
- PyQt - Python bindings for the [:earth_americas: Qt](http://www.qt.io/) cross-platform application and UI framework, with support for both Qt v4 and Qt v5 frameworks.
- PySide - Python bindings for the [:earth_americas: Qt](http://www.qt.io/) cross-platform application and UI framework, supporting the Qt v4 framework.
- :earth_americas: Tkinter - Tkinter is Python's de-facto standard GUI package.
- :earth_americas: urwid - A library for creating terminal GUI applications with strong support for widgets, events, rich colors, etc.
- :earth_americas: 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.
- :earth_americas: PyGObject - Python Bindings for GLib/GObject/GIO/GTK+ (GTK+3)
- :earth_americas: kivy - A library for creating NUI applications, running on Windows, Linux, Mac OS X, Android and iOS.
-
Testing
- sixpack - A language-agnostic A/B Testing framework.
- freezegun - Travel through time by mocking the datetime module.
- 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.
- nose - A nicer `unittest` for Python.
- Robot Framework - A generic test automation framework.
- fake2db - Fake database generator.
- :earth_americas: tox - Auto builds and tests distributions in multiple Python versions
- :earth_americas: tox - Auto builds and tests distributions in multiple Python versions
- :earth_americas: tox - Auto builds and tests distributions in multiple Python versions
- :earth_americas: tox - Auto builds and tests distributions in multiple Python versions
- :earth_americas: unittest - (Python standard library) Unit testing framework.
- :earth_americas: pytest - A mature full-featured Python testing tool.
- locust - Scalable user load testing tool written in Python.
- PyAutoGUI - PyAutoGUI is a cross-platform GUI automation Python module for human beings.
- :earth_americas: mock - (Python standard library) A mocking and patching library.
- httmock - A mocking library for requests for Python 2.6+ and 3.2+.
- httpretty - HTTP request mock tool for Python.
- splinter - Open source tool for testing web applications.
- responses - A utility library for mocking out the requests Python library.
- VCR.py - Record and replay HTTP interactions on your tests.
- factory_boy - A test fixtures replacement for Python.
- mixer - Another fixtures replacement. Supported Django, Flask, SQLAlchemy, Peewee and etc.
- :earth_americas: faker - A Python package that generates fake data.
- green - A clean, colorful test runner.
-
Science and Data Analysis
- bccb - Collection of useful code related to biological analysis.
- :earth_americas: NumPy - A fundamental package for scientific computing with Python.
- :earth_americas: Pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.
- zipline - A Pythonic algorithmic trading library.
- :earth_americas: Neupy - Running and testing different Artificial Neural Networks algorithms.
- :earth_americas: PyDy - Short for Python Dynamics, used to assist with workflow in the modeling of dynamic motion based around NumPy, SciPy, IPython, and matplotlib.
- :earth_americas: RDKit - Cheminformatics and Machine Learning Software.
- :earth_americas: Neupy - Running and testing different Artificial Neural Networks algorithms.
- bcbio-nextgen - A toolkit providing best-practice pipelines for fully automated high throughput sequencing analysis.
- blaze - NumPy and Pandas interface to Big Data.
- :earth_americas: Numba - Python JIT (just in time) complier to LLVM aimed at scientific Python by the developers of Cython and NumPy.
- :earth_americas: Open Babel - A chemical toolbox designed to speak the many languages of chemical data.
- Open Mining - Business Intelligence (BI) in Python (Pandas web interface)
- PyMC - Markov Chain Monte Carlo sampling toolkit.
- statsmodels - Statistical modeling and econometrics in Python.
- SymPy - A Python library for symbolic mathematics.
-
Computer Vision
- :earth_americas: OpenCV - Open Source Computer Vision Library.
- :earth_americas: SimpleCV - An open source framework for building computer vision applications.
- :earth_americas: SimpleCV - An open source framework for building computer vision applications.
-
Machine Learning
- Pylearn2 - A Machine Learning library based on [Theano](https://github.com/Theano/Theano).
- pydeep - Deep learning in python
- vowpal_porpoise - A lightweight Python wrapper for [Vowpal Wabbit](https://github.com/JohnLangford/vowpal_wabbit/).
- Crab - A flexible, fast recommender engine.
- pattern - Web mining module for Python.
- awesome-machine-learning
- gensim - Topic Modelling for Humans.
- NuPIC - Numenta Platform for Intelligent Computing.
- PyBrain - Another Python Machine Learning Library.
- python-recsys - A Python library for implementing a Recommender System.
- :earth_americas: scikit-learn - A Python module for machine learning built on top of SciPy.
- skflow - A simplified interface for [TensorFlow](https://github.com/tensorflow/tensorflow) (mimicking scikit-learn).
- hebel - GPU-Accelerated Deep Learning Library in Python.
-
MapReduce
- streamparse - Run Python code against real-time streams of data. Integrates with [:earth_americas: Apache Storm](http://storm.apache.org/).
- dumbo - Python module that allows one to easily write and run Hadoop programs.
- mrjob - Run MapReduce jobs on Hadoop or Amazon Web Services.
- dpark - Python clone of Spark, a MapReduce alike framework in Python.
- luigi - A module that helps you build complex pipelines of batch jobs.
-
Functional Programming
- CyToolz - Cython implementation of Toolz: High performance functional utilities.
- fn.py - Functional programming in Python: implementation of missing features to enjoy FP.
- funcy - A fancy and practical functional tools.
- Toolz - A collection of functional utilities for iterators, functions, and dictionaries.
-
Third-party APIs
- django-wordpress - WordPress models and views for Django.
- gspread - Google Spreadsheets Python API.
- gmail - A Pythonic interface for Gmail.
- List of Python API Wrappers and Libraries
- :earth_americas: apache-libcloud - One Python library for all clouds.
- boto - Python interface to Amazon Web Services.
- facebook-sdk - Facebook Platform Python SDK.
- facepy - Facepy makes it really easy to interact with Facebook's Graph API
- twython - A Python wrapper for the Twitter API.
-
Editor Plugins
- Anaconda - Anaconda turns your Sublime Text 3 in a full featured Python development IDE.
- YouCompleteMe - Includes [Jedi](https://github.com/davidhalter/jedi)-based completion engine for Python.
- Jedi-vim - Vim bindings for the Jedi auto-completion library for Python.
- SublimeJEDI - A Sublime Text plugin to the awesome auto-complete library Jedi.
- Elpy - Emacs Python Development Environment.
- PTVS - Python Tools for Visual Studio.
-
IDEs
- :earth_americas: PyCharm - Commercial Python IDE by JetBrains. Has free community edition available.
- Spyder - Open Source Python IDE.
-
Continuous Integration
- Travis CI - A popular CI service for your open source and [:earth_americas: private](https://travis-ci.com) projects. (GitHub only)
- :earth_americas: CircleCI - A CI service that can run very fast parallel testing. (GitHub only)
- :earth_americas: Vexor CI - A continuous integration tool for private apps with pay-per-minute billing model.
- awesome-CIandCD
- :earth_americas: Wercker - A Docker-based platform for building and deploying applications and microservices.
-
Websites
-
Package Management
- :earth_americas: Curdling - Curdling is a command line tool for managing Python packages.
- :earth_americas: Curdling - Curdling is a command line tool for managing Python packages.
- :octocat: pip-tools - :star: 1691 :fork_and_knife: 160 - A set of tools to keep your pinned Python dependencies fresh.
- :octocat: conda - :star: 836 :fork_and_knife: 284 - Cross-platform, Python-agnostic binary package manager.
- :earth_americas: pip - The Python package and dependency manager.
-
Date and Time
- dateutil - Extensions to the standard Python [:earth_americas: datetime](https://docs.python.org/2/library/datetime.html) module.
- :octocat: delorean - :star: 1208 :fork_and_knife: 62 - A library for clearing up the inconvenient truths that arise dealing with datetimes.
- moment - A Python library for dealing with dates/times. Inspired by [:earth_americas: Moment.js](http://momentjs.com/).
- pytz - World timezone definitions, modern and historical. Brings the [:earth_americas: tz database](https://en.wikipedia.org/wiki/Tz_database) into Python.
- :octocat: PyTime - :star: 97 :fork_and_knife: 12 - A easy-use Python module which aims to operate date/time/datetime by string.
- :octocat: when.py - :star: 148 :fork_and_knife: 13 - Providing user-friendly functions to help perform common date and time actions.
- :octocat: Chronyk - :star: 221 :fork_and_knife: 8 - A Python 3 library for parsing human-written times and dates.
-
Specific Formats Processing
- :octocat: pyexcel - :star: 99 :fork_and_knife: 29 - Providing one API for reading, manipulating and writing csv, ods, xls, xlsx and xlsm files.
- :octocat: python-docx - :star: 572 :fork_and_knife: 226 - Reads, queries and modifies Microsoft Word 2007/2008 docx files.
- :octocat: Python-Markdown - :star: 903 :fork_and_knife: 256 - A Python implementation of John Gruber’s Markdown.
- :octocat: unp - :star: 224 :fork_and_knife: 11 - A command line tool that can unpack archives easily.
- :octocat: PDFMiner - :star: 1629 :fork_and_knife: 433 - A tool for extracting information from PDF documents.
- :octocat: csvkit - :star: 2247 :fork_and_knife: 328 - Utilities for converting to and working with CSV.
- :octocat: tablib - :star: 2018 :fork_and_knife: 283 - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
- :octocat: Marmir - :star: 121 :fork_and_knife: 17 - Takes Python data structures and turns them into spreadsheets.
- :octocat: unoconv - :star: 762 :fork_and_knife: 224 - Convert between any document format supported by LibreOffice/OpenOffice.
- xlwt - excel/xlrd) - :star: 788 :fork_and_knife: 185 - Writing and reading data and formatting information from Excel files.
- :octocat: PyPDF2 - :star: 1032 :fork_and_knife: 330 - A library capable of splitting, merging and transforming PDF pages.
- :earth_americas: ReportLab - Allowing Rapid creation of rich PDF documents.
- :octocat: Mistune - :star: 702 :fork_and_knife: 64 - Fastest and full featured pure Python parsers of Markdown.
-
Code Analysis and Linter
- :earth_americas: coala - Language independent and easily extendable code analysis application.
- :earth_americas: Flake8 - The modular source code checker: pep8, pyflakes and co.
- :earth_americas: coala - Language independent and easily extendable code analysis application.
- code2flow - Turn your Python and JavaScript code into DOT flowcharts.
- pycallgraph - A library that visualises the flow (call graph) of your Python application.
- pysonar2 - A type inferencer and indexer for Python.
- :earth_americas: Pylint - A Fully customizable source code analyzer.
- pylama - Code audit tool for Python and JavaScript.
-
Hardware
- :earth_americas: Pyro - Python Robotics.
- :earth_americas: Pyro - Python Robotics.
- :earth_americas: Pingo - Pingo provides a uniform API to program devices like the Raspberry Pi, pcDuino, Intel Galileo, etc.
- PyUserInput - A module for cross-platform control of the mouse and keyboard.
- :earth_americas: Pyro - Python Robotics.
- scapy - A brilliant packet manipulation library.
- wifi - A Python library and command line tool for working with WiFi on Linux.
- :earth_americas: Pingo - Pingo provides a uniform API to program devices like the Raspberry Pi, pcDuino, Intel Galileo, etc.
-
Compatibility
- :earth_americas: Six - Python 2 and 3 compatibility utilities.
- Python-Modernize - Modernizes Python code for eventual Python 3 migration.
-
Miscellaneous
- blinker - A fast Python in-process signal/event dispatching system.
- itsdangerous - Various helpers to pass trusted data to untrusted environments.
- pluginbase - A simple but flexible plugin system for Python.
- Pychievements - A framework for creating and tracking achievements.
- :earth_americas: Tryton - A general purpose business framework.
-
Algorithms and Design Patterns
- python-patterns - A collection of design patterns in Python.
- algorithms - A module of algorithms for Python.
-
Build Tools
- :earth_americas: buildout - A build system for creating, assembling and deploying applications from multiple parts.
- :earth_americas: buildout - A build system for creating, assembling and deploying applications from multiple parts.
- :octocat: PyBuilder - :star: 684 :fork_and_knife: 146 - A continuous build tool written in pure Python.
- :earth_americas: SCons - A software construction tool.
-
Asset Management
- :earth_americas: fanstatic - Packages, optimizes, and serves static file dependencies as Python packages.
- :earth_americas: fileconveyor - A daemon to detect and sync files to CDNs, S3 and FTP.
- webassets - Bundles, optimizes, and manages unique cache-busting URLs for static resources.
- django-compressor - Compresses linked and inline JavaScript or CSS into a single cached file.
- django-pipeline - An asset packaging library for Django.
- django-storages - A collection of custom storage back ends for Django.
- :earth_americas: fanstatic - Packages, optimizes, and serves static file dependencies as Python packages.
- flask-assets - Helps you integrate webassets into your Flask app.
- jinja-assets-compressor - A Jinja extension to compile and compress your assets.
-
Twitter
-
Weekly
-
Natural Language Processing
- :octocat: Jieba - :star: 5763 :fork_and_knife: 1828 - Chinese text segmentation.
- :octocat: TextBlob - :star: 3165 :fork_and_knife: 378 - Providing a consistent API for diving into common NLP tasks.
- :earth_americas: NLTK - A leading platform for building Python programs to work with human language data.
- :octocat: SnowNLP - :star: 1436 :fork_and_knife: 420 - A library for processing Chinese text.
- :earth_americas: spaCy - A library for industrial-strength natural language processing in Python and Cython.
- :octocat: TextGrocery - :star: 284 :fork_and_knife: 89 - A simple, efficient short-text classification tool based on LibLinear and Jieba.
- :octocat: langid.py - :star: 611 :fork_and_knife: 112 - Stand-alone language identification system.
-
Code Quality
- :earth_americas: Codacy - Automated Code Review to ship better code, faster. Free for Open Source.
- :earth_americas: Landscape - Hosted continuous Python code metrics.
- :earth_americas: QuantifiedCode - A data-driven, automated, continuous code review tool.
-
Environment Management
- :earth_americas: venv - (Python standard library in Python 3.3+) Creating lightweight virtual environments.
- :octocat: p - :star: 578 :fork_and_knife: 25 - Dead simple interactive Python version management.
- :earth_americas: virtualenvwrapper - A set of extensions to virtualenv.
- :octocat: pyenv - :star: 5040 :fork_and_knife: 406 - Simple Python version management.
-
Interactive Interpreter
- :octocat: bpython - :star: 588 :fork_and_knife: 76 – A fancy interface to the Python interpreter.
- ptpython - Advanced Python REPL built on top of the [:octocat: python-prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit) - :star: 2917 :fork_and_knife: 154.
-
Documentation
- :octocat: pdoc - :star: 235 :fork_and_knife: 38 - Epydoc replacement to auto generate API documentation for Python libraries.
- awesome-sphinxdoc
- :octocat: Pycco - :star: 506 :fork_and_knife: 114 - The literate-programming-style documentation generator.
-
Networking
- :earth_americas: 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.
- txZMQ - Twisted based wrapper for the ZeroMQ message library.
-
WebSocket
- AutobahnPython - WebSocket & WAMP for Python on Twisted and [:earth_americas: asyncio](https://docs.python.org/3/library/asyncio.html).
- Crossbar - Open-source Unified Application Router (Websocket & WAMP for Python on Autobahn).
- django-socketio - WebSockets for Django.
- WebSocket-for-Python - WebSocket client and server library for Python 2 and 3 as well as PyPy.
-
Files
- :earth_americas: imghdr - (Python standard library) Determine the type of an image.
- :earth_americas: mimetypes - (Python standard library) Map filenames to MIME types.
- :octocat: python-magic - :star: 678 :fork_and_knife: 104 - A Python interface to the libmagic file type identification library.
- :octocat: Unipath - :star: 373 :fork_and_knife: 31 - An object-oriented approach to file/directory operations.
- :octocat: watchdog - :star: 2138 :fork_and_knife: 278 - API and shell utilities to monitor file system events.
-
Video
- scikit-video - Video processing routines for SciPy.
-
Forms
- Deform - Python HTML form generation library influenced by the formish form generation library.
- django-remote-forms - A platform independent Django form serializer.
-
Serialization
- marshmallow - marshmallow is an ORM/ODM/framework-agnostic library for converting complex datatypes, such as objects, to and from native Python datatypes.
-
News Feed
- django-activity-stream - Generating generic activity streams from the actions on your site.
- Stream-Framework - Building newsfeed and notification systems using Cassandra and Redis.
Programming Languages
Categories
Testing
24
Command-line Tools
21
Text Processing
20
Database Drivers
18
Science and Data Analysis
16
RESTful API
14
Specific Formats Processing
13
Machine Learning
13
Websites
12
Audio
11
Web Content Extracting
11
Authentication
11
ORM
11
Imagery
11
DevOps Tools
10
GUI
10
Asset Management
9
Debugging Tools
9
Podcasts
9
Email
9
HTML Manipulation
9
Third-party APIs
9
Web Frameworks
9
CMS
8
Twitter
8
Code Analysis and Linter
8
Hardware
8
Web Crawling
7
Date and Time
7
Job Scheduler
7
Caching
7
Data Visualization
7
Natural Language Processing
7
E-commerce
7
Search
6
Editor Plugins
6
Network Virtualization and SDN
6
Microsoft Windows
6
Data Validation
6
WSGI Servers
6
Concurrency and Parallelism
6
Game Development
6
Continuous Integration
5
Files
5
Geolocation
5
Package Management
5
Miscellaneous
5
Static Site Generator
5
MapReduce
5
Admin Panels
5
URL Manipulation
5
Functional Programming
4
Environment Management
4
Package Repositories
4
Distribution
4
Networking
4
Build Tools
4
WebSocket
4
HTTP
4
Cryptography
4
Foreign Function Interface
4
Logging
4
Weekly
4
Documentation
3
Computer Vision
3
Processes
3
Code Quality
3
Database
3
Queue
3
Serverless Frameworks
3
Configuration
3
High Performance
3
Interactive Interpreter
2
IDEs
2
Template Engine
2
Permissions
2
Anti-spam
2
Forms
2
Downloader
2
RPC Servers
2
Algorithms and Design Patterns
2
Compatibility
2
Internationalization
2
News Feed
2
Serialization
1
OCR
1
Video
1
Sub Categories
Keywords
python
123
django
11
http
8
awesome-list
6
testing
6
database
5
pypi
5
flask
5
python3
5
natural-language-processing
4
cli
4
awesome
4
redis
3
python-3
3
nlp
3
linux
3
monitoring
3
pallets
3
automation
3
cloud
3
markdown
3
aws
3
data-science
3
sqlalchemy
3
library
3
serialization
3
cloud-management
3
shell
3
datetime
2
jinja
2
machine-learning
2
smtp
2
template-engine
2
data-mining
2
crawler
2
dank
2
mock
2
twisted
2
utilities
2
command-line
2
json
2
validation
2
schema
2
deserialization
2
imap
2
windows
2
zeromq
2
mocking
2
markdown-parser
2
mysql
2