2014-06-27 21:04:05 +00:00
# Awesome Python
2014-06-27 21:00:06 +00:00
2014-06-27 21:04:05 +00:00
A curated list of awesome Python frameworks, libraries and resources. Inspired by [awesome-php ](https://github.com/ziadoz/awesome-php ).
2014-06-28 07:26:28 +00:00
![Life is a piece of shit ](https://raw.githubusercontent.com/vinta/awesome-python/master/Life%20is%20a%20piece%20of%20shit,%20you%20need%20Python.gif "Life is a piece of shit, you need Python" )
so you need Python.
2014-06-27 21:04:05 +00:00
- [Awesome Python ](#awesome-python )
- [Environment Management ](#environment-management )
- [Package Management ](#package-management )
- [Files ](#files )
- [Date and Time ](#date-and-time )
- [Text Processing ](#text-processing )
- [Natural Language Processing ](#natural-language-processing )
- [Command-line Tools ](#command-line-tools )
- [Documentation ](#documentation )
- [Imagery ](#imagery )
- [Audio ](#audio )
- [Video ](#video )
- [Geolocation ](#geolocation )
- [HTTP ](#http )
- [Database Drivers ](#database-drivers )
- [ORM ](#orm )
- [Web Frameworks ](#web-frameworks )
- [CMS ](#cms )
- [RESTful API ](#restful-api )
- [Authentication and OAuth ](#authentication-and-oauth )
- [Template Engine ](#template-engine )
- [Queue ](#queue )
- [Search ](#search )
- [Asset Management ](#asset-management )
- [Caching ](#caching )
- [Email ](#email )
- [URL Manipulation ](#url-manipulation )
- [HTML Manipulation ](#html-manipulation )
- [Web Crawling ](#web-crawling )
- [Web Content Extracting ](#web-content-extracting )
- [Networking ](#networking )
- [GUI ](#gui )
- [Logging ](#logging )
- [Testing ](#testing )
- [Code Analysis and Linter ](#code-analysis-and-linter )
- [Science and Data Aanalysis ](#science-and-data-aanalysis )
- [Machine Learning ](#machine-learning )
- [Third-party APIs ](#third-party-apis )
- [Miscellaneous ](#miscellaneous )
- [Resources ](#resources )
- [Books ](#books )
- [Websites ](#websites )
- [Articles ](#articles )
## Environment Management
*Libraries for Python version and environment management.*
* [pyenv ](https://github.com/yyuu/pyenv ) - Simple Python version management.
* [virtualenv ](https://pypi.python.org/pypi/virtualenv ) - A tool to create isolated Python environments.
* [virtualenvwrapper ](https://pypi.python.org/pypi/virtualenvwrapper ) - A set of extensions to virtualenv
## Package Management
*Libraries for package and dependency management.*
* [pip ](https://pip.pypa.io/en/latest/ ) / [Python Package Index ](https://pypi.python.org/pypi ) - The package and dependency manager.
* [wheel ](http://pythonwheels.com/ ) - The new standard of python distribution and are intended to replace eggs.
## Files
2014-06-28 07:26:28 +00:00
*Libraries for file manipulation and MIME type detection.*
2014-06-27 21:04:05 +00:00
* [mimetypes ](https://docs.python.org/2/library/mimetypes.html ) - (Python standard library) Map filenames to MIME types.
* [imghdr ](https://docs.python.org/2/library/imghdr.html ) - (Python standard library) Determine the type of an image.
* [python-magic ](https://github.com/ahupp/python-magic ) - A Python interface to the libmagic file type identification library.
* [path.py ](https://github.com/jaraco/path.py ) - A module wrapper for [os.path ](https://docs.python.org/2/library/os.path.html ).
* [watchdog ](https://github.com/gorakhargosh/watchdog ) - API and shell utilities to monitor file system events.
2014-06-29 06:17:14 +00:00
* [django-storages ](http://code.larlet.fr/django-storages/ ) - A collection of custom storage backends for Django.
2014-06-27 21:04:05 +00:00
## Date and Time
2014-06-28 07:26:28 +00:00
*Libraries for working with dates and times.*
2014-06-27 21:04:05 +00:00
* [arrow ](https://github.com/crsmithdev/arrow ) - Better dates & times for Python.
* [dateutil ](https://pypi.python.org/pypi/python-dateutil ) - Extensions to the standard Python [datetime ](https://docs.python.org/2/library/datetime.html ) module.
2014-06-29 06:17:14 +00:00
* [delorean ](https://github.com/myusuf3/delorean/ ) - A library for clearing up the inconvenient truths that arise dealing with datetimes in Python.
* [when.py ](https://github.com/dirn/When.py ) - Providing user-friendly functions to help perform common date and time actions.
2014-06-27 21:04:05 +00:00
* [moment ](https://github.com/zachwill/moment ) - A Python library for dealing with dates/times. Inspired by [Moment.js ](http://momentjs.com/ ).
## Text Processing
2014-06-28 07:26:28 +00:00
*Libraries for parsing and manipulating texts.*
2014-06-27 21:04:05 +00:00
* [difflib ](https://docs.python.org/2/library/difflib.html ) - (Python standard library) Helpers for computing deltas.
* [Levenshtein ](https://github.com/ztane/python-Levenshtein/ ) - Fast computation of Levenshtein distance and string similarity.
* [fuzzywuzzy ](https://github.com/seatgeek/fuzzywuzzy ) - Fuzzy String Matching.
* [esmre ](https://code.google.com/p/esmre/ ) - Regular expression accelerator.
* [phonenumbers ](https://github.com/daviddrysdale/python-phonenumbers ) - Library for parsing, formatting, storing and validating international phone numbers.
* [python-user-agents ](https://github.com/selwin/python-user-agents ) - Browser user agent parser.
* [shortuuid ](https://github.com/stochastic-technologies/shortuuid ) - A generator library for concise, unambiguous and URL-safe UUIDs.
* [tablib ](https://github.com/kennethreitz/tablib ) - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
2014-06-29 11:32:01 +00:00
* [sqlparse ](https://sqlparse.readthedocs.org/ ) - A non-validating SQL parser.
2014-06-27 21:04:05 +00:00
* [Pygments ](http://pygments.org/ ) - A generic syntax highlighter.
* [python-slugify ](https://github.com/un33k/python-slugify ) - A Python slugify library that handles unicode.
* [unicode-slugify ](https://github.com/mozilla/unicode-slugify ) - A slugifier that generates unicode slugs. Developed by Mozilla.
* [unidecode ](https://pypi.python.org/pypi/Unidecode ) - ASCII transliterations of Unicode text.
* [chardet ](https://github.com/chardet/chardet ) - Python 2/3 compatible character encoding detector.
* [xpinyin ](https://github.com/lxneng/xpinyin ) - A library to translate chinese hanzi (漢字) to pinyin (拼音).
* [pangu.py ](https://github.com/vinta/pangu.py ) - Spacing texts.
2014-06-29 11:32:01 +00:00
* [python-docx ](https://github.com/mikemaccana/python-docx ) - Reads, queries and modifies Microsoft Word 2007/2008 docx files.
2014-06-27 21:04:05 +00:00
* [xlwt / xlrd ](http://www.python-excel.org/ ) - A package is for writing and reading data and formatting information from Excel files.
* [XlsxWriter ](https://xlsxwriter.readthedocs.org/ ) - A Python module for creating Excel .xlsx files.
2014-06-28 07:26:28 +00:00
* [PyYAML ](http://pyyaml.org/ ) - YAML implementations for Python.
2014-06-27 21:04:05 +00:00
## Natural Language Processing
2014-06-28 07:26:28 +00:00
*Libraries for working with human languages.*
2014-06-27 21:04:05 +00:00
* [NLTK ](http://www.nltk.org/ ) - A leading platform for building Python programs to work with human language data.
* [TextBlob ](http://textblob.readthedocs.org/ ) - Providing a consistent API for diving into common natural language processing (NLP) tasks.
* [jieba ](https://github.com/fxsjy/jieba#jieba-1 ) - Chinese Words Segementation Utilities.
* [snownlp ](https://github.com/isnowfy/snownlp ) - A library for processing Chinese text.
* [loso ](https://github.com/victorlin/loso ) - Another Chinese segmentation library.
## Command-line Tools
2014-06-28 07:26:28 +00:00
*Libraries for building command line utilities.*
2014-06-27 21:04:05 +00:00
* [click ](http://click.pocoo.org/ ) - A package for creating beautiful command line interfaces in a composable way.
* [clint ](https://github.com/kennethreitz/clint ) - Python Command-line Application Tools.
* [docopt ](http://docopt.org/ ) - Pythonic command line arguments parser.
* [colorama ](https://pypi.python.org/pypi/colorama ) - Cross-platform colored terminal text.
## Documentation
2014-06-28 07:26:28 +00:00
*Libraries for generating project documentation.*
2014-06-27 21:04:05 +00:00
* [Sphinx ](http://sphinx-doc.org/ ) - Python Documentation generator.
## Imagery
2014-06-28 07:26:28 +00:00
*Libraries for manipulating images.*
2014-06-27 21:04:05 +00:00
* [pillow ](http://pillow.readthedocs.org/ ) - Pillow is the **friendly** PIL fork. PIL is the [Python Imaging Library ](http://www.pythonware.com/products/pil/ ).
* [thumbor ](https://github.com/thumbor/thumbor ) - A smart imaging service. It enables on-demand crop, resizing and flipping of images.
* [imgSeek ](http://www.imgseek.net/ ) - A project for searching a collection of images using visual similarity.
* [python-qrcode ](https://github.com/lincolnloop/python-qrcode ) - A pure Python QR Code generator.
* [pygram ](https://github.com/ajkumar25/pygram ) - Instagram-like image filters.
* [Quads ](https://github.com/fogleman/Quads ) - Computer art based on quadtrees.
## Audio
2014-06-28 07:26:28 +00:00
*Libraries for manipulating audio.*
2014-06-27 21:04:05 +00:00
* [django-elastic-transcoder ](https://github.com/StreetVoice/django-elastic-transcoder ) - Django + AWS Elastic Transcoder.
* [beets ](http://beets.radbox.org/ ) - A music library manager and [MusicBrainz ](https://musicbrainz.org/ ) tagger.
2014-06-29 06:17:14 +00:00
* [pyechonest ](https://github.com/echonest/pyechonest ) - Python client for the [Echo Nest ](http://developer.echonest.com/docs/ ) API.
2014-06-27 21:04:05 +00:00
* [dejavu ](https://github.com/worldveil/dejavu ) - Audio fingerprinting and recognition.
* [pydub ](https://github.com/jiaaro/pydub ) - Manipulate audio with a simple and easy high level interface.
* [audioread ](https://github.com/sampsyo/audioread ) - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.
* [mutagen ](https://code.google.com/p/mutagen/ ) - A Python module to handle audio metadata.
* [tinytag ](https://github.com/devsnd/tinytag ) - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
## Video
2014-06-28 07:26:28 +00:00
*Libraries for manipulating video and GIFs.*
2014-06-27 21:04:05 +00:00
* [moviepy ](http://zulko.github.io/moviepy/ ) - A module for script-based movie editing with many formats, including animated GIFs.
* [shorten.tv ](http://www.shorten.tv/ ) - Video summarization.
* [youtube-dl ](http://rg3.github.io/youtube-dl/ ) - A small command-line program to download videos from YouTube.
## Geolocation
2014-06-28 07:26:28 +00:00
*Libraries for geocoding addresses and working with latitudes and longitudes.*
2014-06-27 21:04:05 +00:00
* [GeoDjango ](https://docs.djangoproject.com/en/dev/ref/contrib/gis/ ) - A world-class geographic web framework.
* [geopy ](https://github.com/geopy/geopy ) - Python Geocoding Toolbox.
2014-06-28 07:26:28 +00:00
* [pygeoip ](https://github.com/appliedsec/pygeoip ) - Pure Python GeoIP API.
* [GeoIP ](https://github.com/maxmind/geoip-api-python ) - Python API for MaxMind GeoIP Legacy Database.
* [geojson ](https://github.com/frewsxcv/python-geojson ) - Python bindings and utlities for GeoJSON.
2014-06-27 21:04:05 +00:00
## HTTP
2014-06-28 07:26:28 +00:00
*Libraries for working with HTTP.*
2014-06-27 21:04:05 +00:00
* [requests ](http://docs.python-requests.org/ ) - HTTP Requests for Humans™.
* [httpie ](https://github.com/jakubroztocil/httpie ) - A command line HTTP client, a user-friendly cURL replacement.
## Database Drivers
2014-06-28 07:26:28 +00:00
*Libraties for connecting and operating databases*
* [mysql-python ](http://sourceforge.net/projects/mysql-python/ ) - The MySQL database connector for Python.
2014-06-27 21:04:05 +00:00
* [psycopg2 ](http://initd.org/psycopg/ ) - The most popular PostgreSQL adapter for the Python.
* [PyMongo ](http://docs.mongodb.org/ecosystem/drivers/python/ ) - The official Python client for MongoDB.
2014-06-28 07:26:28 +00:00
* [redis-py ](https://github.com/andymccurdy/redis-py ) - The Redis Python Client.
2014-06-27 21:04:05 +00:00
## ORM
2014-06-28 07:26:28 +00:00
*Libraries that implement Object-Relational Mapping or datamapping techniques.*
2014-06-27 21:04:05 +00:00
* Relational Databases
2014-06-29 06:17:14 +00:00
* [Django Models ](https://docs.djangoproject.com/en/dev/topics/db/models/ ) - A part of Django.
2014-06-27 21:04:05 +00:00
* [SQLAlchemy ](http://www.sqlalchemy.org/ ) - The Python SQL Toolkit and Object Relational Mapper.
* [peewee ](https://github.com/coleifer/peewee ) - A small, expressive ORM.
* NoSQL Databases
* [MongoEngine ](http://mongoengine.org/ ) - A Python Object-Document-Mapper for working with MongoDB.
* [redisco ](https://github.com/kiddouk/redisco ) - A Python Library for Simple Models and Containers Persisted in Redis.
## Web Frameworks
2014-06-28 07:26:28 +00:00
*Web development frameworks.*
2014-06-29 11:32:01 +00:00
* [Django ](https://www.djangoproject.com/ ) - The most popular web framework in Python.
2014-06-27 21:04:05 +00:00
* [Flask ](http://flask.pocoo.org/ ) - A microframework for Python.
* [Bottle ](http://bottlepy.org/ ) - A fast, simple and lightweight WSGI micro web-framework.
* [Pyramid ](http://www.pylonsproject.org/ ) - A small, fast, down-to-earth, open source Python web framework.
## CMS
2014-06-28 07:26:28 +00:00
*Content Management Systems*
2014-06-29 11:32:01 +00:00
* [Mezzanine ](http://mezzanine.jupo.org/ ) - A powerful, consistent, and flexible content management platform.
2014-06-27 21:04:05 +00:00
* [Wagtail ](http://wagtail.io/ ) - A Django content management system
* [django-oscar ](http://oscarcommerce.com/ ) - An open-source ecommerce framework for Django.
## RESTful API
2014-06-28 07:26:28 +00:00
*Libraries for developing RESTful APIs.*
2014-06-27 21:04:05 +00:00
* [django-rest-framework ](http://www.django-rest-framework.org/ ) - A powerful and flexible toolkit that makes it easy to build Web APIs.
* [django-tastypie ](http://tastypieapi.org/ ) - Creating delicious APIs for Django apps.
* [flask-api ](http://www.flaskapi.org/ ) - An implementation of the same web browsable APIs that django-rest-framework provides.
* [flask-restful ](http://flask-restful.readthedocs.org/ ) - An extension for Flask that adds support for quickly building REST APIs.
* [falcon ](http://falconframework.org/ ) - A high-performance Python framework for building cloud APIs and web app backends.
2014-06-29 06:17:14 +00:00
* [eve ](https://github.com/nicolaiarocci/eve ) - REST API framework powered by Flask, MongoDB and good intentions.
* [sandman ](https://github.com/jeffknupp/sandman ) - Automated REST APIs for existing database-driven systems.
2014-06-27 21:04:05 +00:00
## Authentication and OAuth
2014-06-28 07:26:28 +00:00
*Libraries for implementing authentications schemes.*
2014-06-29 11:32:01 +00:00
* [python-social-auth ](https://github.com/omab/python-social-auth ) - An easy-to-setup social authentication mechanism.
2014-06-27 21:04:05 +00:00
* [django-oauth-toolkit ](https://github.com/evonove/django-oauth-toolkit ) - OAuth2 goodies for the Djangonauts.
* [django-oauth2-provider ](https://github.com/caffeinehit/django-oauth2-provider ) - Providing OAuth2 access to Django app.
* [python-oauth2 ](https://github.com/simplegeo/python-oauth2 ) - A fully tested, abstract interface to creating OAuth clients and servers.
2014-06-29 06:17:14 +00:00
* [rauth ](https://github.com/litl/rauth ) - A Python library for OAuth 1.0/a, 2.0, and Ofly.
2014-06-27 21:04:05 +00:00
## Template Engine
2014-06-28 07:26:28 +00:00
*Libraries and tools for templating and lexing.*
2014-06-29 06:17:14 +00:00
* [Jinja2 ](https://github.com/mitsuhiko/jinja2 ) - A modern and designer friendly templating language.
2014-06-27 21:04:05 +00:00
## Queue
2014-06-28 07:26:28 +00:00
*Libraries for working with event and task queues.*
* [celery ](http://www.celeryproject.org/ ) - An asynchronous task queue/job queue based on distributed message passing.
2014-06-27 21:04:05 +00:00
* [rq ](http://python-rq.org/ ) - Simple job queues for Python.
## Search
2014-06-28 07:26:28 +00:00
*Libraries and software for indexing and performing search queries on data.*
2014-06-27 21:04:05 +00:00
* [django-haystack ](https://github.com/toastdriven/django-haystack ) - Modular search for Django.
* [elasticsearch-py ](http://www.elasticsearch.org/guide/en/elasticsearch/client/python-api/current/ ) - The official low-level Python client for [Elasticsearch ](http://www.elasticsearch.org/ ).
* [solrpy ](https://code.google.com/p/solrpy/ ) - A Python client for [solr ](http://lucene.apache.org/solr/ ).
* [Whoosh ](http://whoosh.readthedocs.org/ ) - A fast, pure Python search engine library.
## Asset Management
2014-06-28 07:26:28 +00:00
*Tools for managing, compressing and minifying website assets.*
2014-06-29 06:17:14 +00:00
* [django-compressor ](https://github.com/django-compressor/django-compressor ) - Compresses linked and inline javascript or CSS into a single cached file.
2014-06-27 21:04:05 +00:00
## Caching
2014-06-28 07:26:28 +00:00
*Libraries for caching data.*
2014-06-27 21:04:05 +00:00
* TODO
## Email
2014-06-28 07:26:28 +00:00
*Libraries for sending and parsing email.*
2014-06-29 11:32:01 +00:00
* [inbox.py ](https://github.com/kennethreitz/inbox.py ) - Python SMTP Server for Humans.
2014-06-27 21:04:05 +00:00
* [imbox ](https://github.com/martinrusev/imbox ) - Python IMAP for Humans.
* [django-celery-ses ](https://github.com/StreetVoice/django-celery-ses ) - Django email backend with AWS SES and Celery.
## Internationalization
2014-06-28 07:26:28 +00:00
*Libraries for woking with i18n.*
* [Babel ](http://babel.pocoo.org/ ) - An internationalization library for Python.
2014-06-27 21:04:05 +00:00
## URL Manipulation
2014-06-28 07:26:28 +00:00
*Libraries for parsing URLs.*
2014-06-27 21:04:05 +00:00
* [furl ](https://github.com/gruns/furl ) - A small Python library that makes manipulating URLs simple.
* [purl ](https://github.com/codeinthehole/purl ) - A simple, immutable URL class with a clean API for interrogation and manipulation.
## HTML Manipulation
2014-06-29 06:17:14 +00:00
*Libraries for working with HTML and XML.*
2014-06-28 07:26:28 +00:00
2014-06-27 21:04:05 +00:00
* [BeautifulSoup ](http://www.crummy.com/software/BeautifulSoup/bs4/doc/ ) - Providing Pythonic idioms for iterating, searching, and modifying HTML or XML.
* [lxml ](http://lxml.de/ ) - A very fast, easy-to-use and versatile library for handling HTML and XML.
* [html5lib ](https://github.com/html5lib/html5lib-python ) - A standards-compliant library for parsing and serializing HTML documents and fragments.
* [pyquery ](https://github.com/gawel/pyquery ) - A jQuery-like library for parsing HTML.
* [cssutils ](https://pypi.python.org/pypi/cssutils/ ) - A CSS library for Python.
* [MarkupSafe ](https://github.com/mitsuhiko/markupsafe ) - Implements a XML/HTML/XHTML Markup safe string for Python.
* [bleach ](http://bleach.readthedocs.org/ ) - A whitelist-based HTML sanitization and text linkification library.
2014-06-29 06:17:14 +00:00
* [xmltodict ](https://github.com/martinblech/xmltodict ) - Working with XML feel like you are working with JSON.
2014-06-27 21:04:05 +00:00
## Web Crawling
2014-06-28 07:26:28 +00:00
*Libraries for scraping websites.*
2014-06-27 21:04:05 +00:00
* [Scrapy ](http://scrapy.org/ ) - A fast high-level screen scraping and web crawling framework.
* [portia ](https://github.com/scrapinghub/portia ) - Visual scraping for Scrapy.
* [feedparser ](http://pythonhosted.org/feedparser/ ) - Universal feed parser.
* [RoboBrowser ](https://github.com/jmcarp/robobrowser ) - A simple, Pythonic library for browsing the web without a standalone web browser.
## Web Content Extracting
2014-06-28 07:26:28 +00:00
*Libraries for extracting web contents.*
2014-06-27 21:04:05 +00:00
* [newspaper ](https://github.com/codelucas/newspaper ) - News extraction, article extraction and content curation in Pythom.
* [html2text ](https://github.com/aaronsw/html2text ) - Convert HTML to Markdown-formatted text.
2014-06-28 07:26:28 +00:00
* [python-goose ](https://github.com/grangier/python-goose ) - HTML Content/Article Extractor.
2014-06-27 21:04:05 +00:00
* [lassie ](https://github.com/michaelhelmick/lassie ) - Web Content Retrieval for Humans.
* [micawber ](https://github.com/coleifer/micawber ) - A small library for extracting rich content from URLs.
* [sumy ](https://github.com/miso-belica/sumy ) - A module for automatic summarization of text documents and HTML pages.
* [Haul ](https://github.com/vinta/Haul ) - An Extensible Image Crawler.
* [python-readability ](https://github.com/buriy/python-readability ) - Fast Python port of arc90's readability tool.
## Forms
2014-06-28 07:26:28 +00:00
*Libraries for working with forms.*
2014-06-27 21:04:05 +00:00
* [django-crispy-forms ](http://django-crispy-forms.readthedocs.org/ ) - A Django app which lets you create beautiful forms in a very elegant and DRY way.
* [WTForms ](http://wtforms.readthedocs.org/ ) - A flexible forms validation and rendering library.
2014-06-28 07:26:28 +00:00
## Anti-spam
*Libraries for fighting spam.*
* TODO
2014-06-27 21:04:05 +00:00
## Networking
2014-06-28 07:26:28 +00:00
*Libraries for network programming.*
2014-06-27 21:04:05 +00:00
* [gevent ](http://www.gevent.org/ ) - A coroutine-based Python networking library that uses [greenlet ](https://github.com/python-greenlet/greenlet ).
* [Twisted ](https://twistedmatrix.com/trac/ ) - An event-driven networking engine.
* [Tornado ](http://www.tornadoweb.org/ ) - A Web framework and asynchronous networking library.
2014-06-29 11:32:01 +00:00
## Admin Panels
*Libraries for administrative interfaces.*
* [Ajenti ](https://github.com/Eugeny/ajenti ) - The admin panel your servers deserve.
* [django-xadmin ](https://github.com/sshwsfc/django-xadmin ) - Drop-in replacement of Django admin comes with lots of goodies.
* [flask-admin ](https://github.com/mrjoes/flask-admin ) - Simple and extensible administrative interface framework for Flask.
* [flower ](https://github.com/mher/flower ) - Real-time monitor and web admin for Celery.
2014-06-27 21:04:05 +00:00
## DevOps Tools
2014-06-28 07:26:28 +00:00
*Software and libraries for DevOps*
2014-06-27 21:04:05 +00:00
* [OpenStack ](http://www.openstack.org/ ) - Open source software for building private and public clouds.
* [Ansible ](http://www.ansible.com/ ) - An IT automation tool.
* [SaltStack ](http://www.saltstack.com/community/ ) - Infrastructure automation and management system.
* [Fabric ](http://www.fabfile.org/ ) - Tool for streamlining the use of SSH for application deployment or systems administration tasks.
2014-06-29 11:32:01 +00:00
* [Fabtools ](https://github.com/ronnix/fabtools ) - Tools for writing awesome Fabric files.
* [cuisine ](https://github.com/sebastien/cuisine ) - Chef-like functionality for Fabric.
* [gunicorn ](http://gunicorn.org/ ) - A WSGI HTTP Server for UNIX, fast clients and sleepy applications.
2014-06-27 21:04:05 +00:00
* [Supervisor ](http://supervisord.org/ ) - A Process Control System.
* [psutil ](https://github.com/giampaolo/psutil ) - A cross-platform process and system utilities module.
## GUI
2014-06-28 07:26:28 +00:00
*Libraries for working with GUI applications.*
2014-06-29 06:17:14 +00:00
* [PySide ](http://qt-project.org/wiki/pyside ) - Python bindings for the Qt cross-platform application and UI framework.
2014-06-27 21:04:05 +00:00
* [wxPython ](http://wxpython.org/ ) - A blending of the wxWidgets C++ class library with the Python.
2014-06-29 11:32:01 +00:00
* [kivy ](http://kivy.org/ ) - A library for creating NUI applications, running on Windows, Linux, Mac OS X, Android and iOS.
2014-06-27 21:04:05 +00:00
## Logging
2014-06-28 07:26:28 +00:00
*Libraries for generating and working with log files.*
2014-06-29 06:17:14 +00:00
* [logging ](https://docs.python.org/2/library/logging.html ) - (Python standard library) Logging facility for Python.
2014-06-27 21:04:05 +00:00
* [Sentry ](https://pypi.python.org/pypi/sentry ) - A realtime logging and aggregation server.
2014-06-29 11:32:01 +00:00
* [Raven ](http://raven.readthedocs.org/ ) - The Python client for Sentry.
2014-06-27 21:04:05 +00:00
## Testing
2014-06-28 07:26:28 +00:00
*Libraries for testing codebases and generating test data.*
2014-06-27 21:04:05 +00:00
* Testing Frameworks
* [unittest ](https://docs.python.org/2/library/unittest.html ) - (Python standard library) Unit testing framework.
* [nose ](https://nose.readthedocs.org/ ) - nose extends unittest.
* [pytest ](http://pytest.org/ ) - A mature full-featured Python testing tool.
* Mock
* [mock ](https://pypi.python.org/pypi/mock ) - A Python Mocking and Patching Library for Testing.
* [responses ](https://github.com/dropbox/responses ) - A utility library for mocking out the requests Python library.
* Fake Data
* [faker ](http://www.joke2k.net/faker/ ) - A Python package that generates fake data.
* [model_mommy ](https://model-mommy.readthedocs.org/ ) - Creating random fixtures for testing in Django.
* Code Coverage
* [coverage ](https://pypi.python.org/pypi/coverage ) - Code coverage measurement.
## Code Analysis and Linter
2014-06-28 07:26:28 +00:00
*Libraries and tools for analysing, parsing and manipulation codebases.*
2014-06-27 21:04:05 +00:00
* [Flake8 ](https://pypi.python.org/pypi/flake8 ) - The modular source code checker: pep8, pyflakes and co.
* [Pylint ](http://www.pylint.org/ ) - A source code analyzer.
2014-06-28 07:26:28 +00:00
## Debugging Tools
*Libraries for dubugging and developing*
* [pdb ](https://docs.python.org/2/library/pdb.html ) - (Python standard library) The Python Debugger.
2014-06-29 06:17:14 +00:00
* [pyringe ](https://github.com/google/pyringe ) - Debugger capable of attaching to and injecting code into Python processes.
2014-06-28 07:26:28 +00:00
* [django-debug-toolbar ](https://github.com/django-debug-toolbar/django-debug-toolbar ) - Display various debug information about the current request/response.
* [django-devserver ](https://github.com/dcramer/django-devserver ) - A drop-in replacement for Django's runserver.
2014-06-27 21:04:05 +00:00
## Science and Data Aanalysis
2014-06-28 07:26:28 +00:00
*Libraries for scientific computing and data analyzing.*
2014-06-27 21:04:05 +00:00
* [SciPy ](http://www.scipy.org/ ) - A Python-based ecosystem of open-source software for mathematics, science, and engineering.
* [NumPy ](http://www.numpy.org/ ) - A fundamental package for scientific computing with Python.
* [matplotlib ](http://matplotlib.org/ ) - A Python 2D plotting library.
* [NetworkX ](https://networkx.github.io/ ) - A high-productivity software for complex networks.
* [Pandas ](http://pandas.pydata.org/ ) - A library providing high-performance, easy-to-use data structures and data analysis tools.
2014-06-29 11:32:01 +00:00
* [PyMC ](https://github.com/pymc-devs/pymc ) - Markov Chain Monte Carlo sampling toolkit.
2014-06-29 06:17:14 +00:00
* [zipline ](https://github.com/quantopian/zipline ) - A Pythonic algorithmic trading library.
* [ggplot ](https://github.com/yhat/ggplot ) - Same API as ggplot2 for R.
2014-06-27 21:04:05 +00:00
## Machine Learning
2014-06-28 07:26:28 +00:00
*Libraries for Machine Learning*
2014-06-27 21:04:05 +00:00
* [scikit-learn ](http://scikit-learn.org/ ) - A Python module for machine learning built on top of SciPy.
* [pattern ](https://github.com/clips/pattern ) - Web mining module for Python.
2014-06-29 11:32:01 +00:00
* [NuPIC ](https://github.com/numenta/nupic ) - Numenta Platform for Intelligent Computing.
* [Pylearn2 ](https://github.com/lisa-lab/pylearn2 ) - A Machine Learning library based on [Theano ](https://github.com/Theano/Theano ).
2014-06-29 06:17:14 +00:00
* [hebel ](https://github.com/hannes-brt/hebel ) - GPU-Accelerated Deep Learning Library in Python.
2014-06-29 11:32:01 +00:00
* [gensim ](https://github.com/piskvorky/gensim ) - Topic Modelling for Humans.
2014-06-27 21:04:05 +00:00
* [PyBrain ](https://github.com/pybrain/pybrain ) - Another Python Machine Learning Library.
* [Crab ](https://github.com/muricoca/crab ) - A flexible, fast recommender engine.
* [python-recsys ](https://github.com/ocelma/python-recsys ) - A Python library for implementing a Recommender System.
## MapReduce
2014-06-28 07:26:28 +00:00
*Framworks and libraries for MapReduce.*
2014-06-27 21:04:05 +00:00
* [PySpark ](http://spark.apache.org/docs/latest/programming-guide.html ) - The Spark Python API.
* [dpark ](https://github.com/douban/dpark ) - Python clone of Spark, a MapReduce alike framework in Python.
2014-06-29 06:17:14 +00:00
* [luigi ](https://github.com/spotify/luigi ) - A module that helps you build complex pipelines of batch jobs.
* [mrjob ](https://github.com/Yelp/mrjob ) - Run MapReduce jobs on Hadoop or Amazon Web Services.
2014-06-29 11:32:01 +00:00
* [dumbo ](https://github.com/klbostee/dumbo ) - Python module that allows one to easily write and run Hadoop programs.
2014-06-27 21:04:05 +00:00
## Third-party APIs
2014-06-28 07:26:28 +00:00
*Libraries for accessing third party APIs.*
* [apache-libcloud ](https://libcloud.apache.org/ ) - One Python library for all clouds.
2014-06-29 06:17:14 +00:00
* [boto ](https://github.com/boto/boto ) - Python interface to Amazon Web Services.
2014-06-27 21:04:05 +00:00
* [s3cmd ](https://github.com/s3tools/s3cmd ) - A command line tool for managing Amazon S3 and CloudFront.
* [twython ](https://github.com/ryanmcgrath/twython ) - A Python wrapper for the Twitter API.
2014-06-29 11:32:01 +00:00
## Algorithms and Design Patterns
*Collections of algorithms and design patterns.*
* [python-patterns ](https://github.com/faif/python-patterns ) - A collection of design patterns in Python.
* [algorithms ](https://github.com/nryoung/algorithms ) - module of algorithms for Python.
2014-06-27 21:04:05 +00:00
## Miscellaneous
2014-06-28 07:26:28 +00:00
*Useful libraries or tools that don't fit in the categories above.*
2014-06-29 06:17:14 +00:00
* [IPython ](https://github.com/ipython/ipython ) - IPython provides a rich toolkit to help you make the most out of using Python interactively.
2014-06-27 21:04:05 +00:00
# Resources
## Books
* TODO
## Websites
* [r/Python ](http://www.reddit.com/r/python ) - News about Python.
* [pyvideo.org ](http://pyvideo.org/ ) - Python related video indexed so you can find it.
* [The Hitchhiker's Guide to Python! ](http://docs.python-guide.org/ ) - The answer to life, the universe, and everything.
* [Python 3 Wall of Superpowers ](http://python3wos.appspot.com/ ) - Too many popular Python packages don't support Python 3.
* [Trending Python repositories on GitHub today ](https://github.com/trending?l=python ) - Good place to find new Python libraries.
* [Django Packages ](https://www.djangopackages.com/ ) - A directory of reusable apps, sites, tools, and more for Django projects.
## Articles
2014-06-29 11:32:01 +00:00
* [More About Unicode in Python 2 and 3 ](http://lucumr.pocoo.org/2014/1/5/unicode-in-2-and-3/ )
2014-06-27 21:04:05 +00:00
# Contributing
Your contributions are always welcome!