An open API service indexing awesome lists of open source software.

Python-Awesome

Awesome Python
https://github.com/spy86/Python-Awesome

Last synced: 2 days ago
JSON representation

  • Network Virtualization

    • Pyretic - A member of the Frenetic family of SDN programming languages that provides powerful abstractions over network switches or emulators.
    • SDX Platform - SDN based IXP implementation that leverages Mininet, POX and Pyretic.
  • News Feed

  • ORM

    • Django Models - A part of Django.
    • awesome-sqlalchemy
    • MongoEngine - A Python Object-Document-Mapper for working with MongoDB.
    • Orator - The Orator ORM provides a simple yet beautiful ActiveRecord implementation.
    • Peewee - A small, expressive ORM.
    • django-mongodb-engine - Django MongoDB Backend.
    • flywheel - Object mapper for Amazon DynamoDB.
    • hot-redis - Rich Python data types for Redis.
    • MongoEngine - A Python Object-Document-Mapper for working with MongoDB.
    • PynamoDB - A Pythonic interface for [Amazon DynamoDB](https://aws.amazon.com/dynamodb/).
    • redisco - A Python Library for Simple Models and Containers Persisted in Redis.
    • butterdb - A Python ORM for Google Drive Spreadsheets.
    • pyDAL - A pure Python Database Abstraction Layer.
    • PonyORM - ORM that provides a generator-oriented interface to SQL.
  • Package Management

    • pip - The Python package and dependency manager.
    • Curdling - Curdling is a command line tool for managing Python packages.
    • conda - Cross-platform, Python-agnostic binary package manager.
    • Curdling - Curdling is a command line tool for managing Python packages.
    • pip-tools - A set of tools to keep your pinned Python dependencies fresh.
  • Package Repositories

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

    • django-guardian - Implementation of per object permissions for Django 1.2+
    • django-rules - A tiny but powerful app providing object-level permissions to Django, without requiring a database.
    • Carteblanche - Module to align code with thoughts of users and designers. Also magically handles navigation and permissions.
  • Podcasts

  • Processes

    • sh - A full-fledged subprocess replacement for Python.
    • delegator.py - [Subprocesses](https://docs.python.org/3.6/library/subprocess.html) for Humans™ 2.0.
  • Queue

    • huey - Little multi-threaded task queue.
    • mrq - Mr. Queue - A distributed worker task queue in Python using Redis & gevent.
    • simpleq - A simple, infinitely scalable, Amazon SQS based queue.
  • Recommender Systems

    • annoy - Approximate Nearest Neighbors in C++/Python optimized for memory usage.
    • fastFM - A library for Factorization Machines.
    • implicit - A fast Python implementation of collaborative filtering for implicit datasets.
    • LightFM - A Python implementation of a number of popular recommendation algorithms.
    • TensorRec - A Recommendation Engine Framework in TensorFlow.
    • surprise - A scikit for building and analyzing recommender systems.
    • libffm - A library for Field-aware Factorization Machine (FFM).
  • RESTful API

    • 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.
    • django-tastypie - Creating delicious APIs for Django apps.
    • eve - REST API framework powered by Flask, MongoDB and good intentions.
    • flask-api-utils - Taking care of API representation and authentication for Flask.
    • flask-restful - Quickly building REST APIs for Flask.
    • flask-restless - Generating RESTful APIs for database models defined with SQLAlchemy.
    • cornice - A RESTful framework for Pyramid.
    • hug - A Python3 framework for cleanly exposing APIs over HTTP and the Command Line with automatic documentation and validation.
    • restless - Framework agnostic REST framework based on lessons learned from Tastypie.
    • ripozo - Quickly creating REST/HATEOAS/Hypermedia APIs.
    • sandman - Automated REST APIs for existing database-driven systems.
    • apistar - A smart Web API framework, designed for Python 3.
  • RPC Servers

    • SimpleXMLRPCServer - (Python standard library) Simple XML-RPC server implementation, single-threaded.
    • zeroRPC - zerorpc is a flexible RPC implementation based on [ZeroMQ](http://zeromq.org/) and [MessagePack](http://msgpack.org/).
    • SimpleJSONRPCServer - This library is an implementation of the JSON-RPC specification.
  • Science

    • PyDy - Short for Python Dynamics, used to assist with workflow in the modeling of dynamic motion.
    • RDKit - Cheminformatics and Machine Learning Software.
    • SimPy - A process-based discrete-event simulation framework.
    • bcbio-nextgen - Providing best-practice pipelines for fully automated high throughput sequencing analysis.
    • bccb - Collection of useful code related to biological analysis.
    • SciPy - A Python-based ecosystem of open-source software for mathematics, science, and engineering.
    • statsmodels - Statistical modeling and econometrics in Python.
    • SymPy - A Python library for symbolic mathematics.
    • Zipline - A Pythonic algorithmic trading library.
    • NumPy - A fundamental package for scientific computing with Python.
    • Open Babel - A chemical toolbox designed to speak the many languages of chemical data.
    • ObsPy - A Python toolbox for seismology.
    • astropy - A community Python library for Astronomy.
    • PyMC - Markov Chain Monte Carlo sampling toolkit.
    • NIPY - A collection of neuroimaging toolkits.
    • elasticsearch-py - The official low-level Python client for [Elasticsearch](https://www.elastic.co/products/elasticsearch).
    • django-haystack - Modular search for Django.
    • elasticsearch-dsl-py - The official high-level Python client for Elasticsearch.
    • esengine - ElasticSearch ODM (Object Document Mapper) for Python.
    • pysolr - A lightweight Python wrapper for Apache Solr (incl. SolrCloud awareness).
    • elasticsearch-py - The official low-level Python client for [Elasticsearch](https://www.elastic.co/products/elasticsearch).
    • Whoosh - A fast, pure Python search engine library.
    • solrpy - A Python client for [solr](http://lucene.apache.org/solr/).
  • Serialization

    • marshmallow - marshmallow is an ORM/ODM/framework-agnostic library for converting complex datatypes, such as objects, to and from native Python datatypes.
  • Serverless Frameworks

    • apex - Build, deploy, and manage [AWS Lambda](https://aws.amazon.com/lambda/) functions with ease.
    • python-lambda - A toolkit for developing and deploying Python code in AWS Lambda.
    • Zappa - A tool for deploying WSGI applications on AWS Lambda and API Gateway.
  • Specific Formats Processing

    • openpyxl - A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
    • ReportLab - Allowing Rapid creation of rich PDF documents.
    • tablib - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
    • Marmir - Takes Python data structures and turns them into spreadsheets.
    • pyexcel - Providing one API for reading, manipulating and writing csv, ods, xls, xlsx and xlsm files.
    • python-docx - Reads, queries and modifies Microsoft Word 2007/2008 docx files.
    • xlwt - excel/xlrd) - Writing and reading data and formatting information from Excel files.
    • PDFMiner - A tool for extracting information from PDF documents.
    • PyPDF2 - A library capable of splitting, merging and transforming PDF pages.
    • Mistune - Fastest and full featured pure Python parsers of Markdown.
    • Python-Markdown - A Python implementation of John Gruber’s Markdown.
    • csvkit - Utilities for converting to and working with CSV.
    • unp - A command line tool that can unpack archives easily.
    • unoconv - Convert between any document format supported by LibreOffice/OpenOffice.
    • xlwings - A BSD-licensed library that makes it easy to call Python from Excel and vice versa.
  • Static Site Generator

    • Hyde - Jinja2-based static web site generator.
    • Lektor - An easy to use static CMS and blog engine.
    • Nikola - A static website and blog generator.
    • Tinkerer - Tinkerer is a blogging engine/.static website generator powered by Sphinx.
    • Cactus - Static site generator for designers.
    • Hyde - Jinja2-based static web site generator.
  • Tagging

  • Template Engine

    • Genshi - Python templating toolkit for generation of web-aware output.
    • Jinja2 - A modern and designer friendly templating language.
  • Testing

    • pytest - A mature full-featured Python testing tool.
    • unittest - (Python standard library) Unit testing framework.
    • mock - (Python standard library) A mocking and patching library.
    • nose - A nicer unittest for Python.
    • nose2 - The successor to nose, based on unittest2.
    • Robot Framework - A generic test automation framework.
    • green - A clean, colorful test runner.
    • locust - Scalable user load testing tool written in Python.
    • PyAutoGUI - PyAutoGUI is a cross-platform GUI automation Python module for human beings.
    • sixpack - A language-agnostic A/B Testing framework.
    • splinter - Open source tool for testing web applications.
    • doublex - Powerful test doubles framework for Python.
    • freezegun - Travel through time by mocking the datetime module.
    • httmock - A mocking library for requests for Python 2.6+ and 3.2+.
    • httpretty - HTTP request mock tool for Python.
    • 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.
    • mimesis - is a Python library that help you generate fake data.
    • fake2db - Fake database generator.
    • faker - A Python package that generates fake data.
    • radar - Generate random datetime / time.
    • 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.
    • hypothesis - Hypothesis is an advanced Quickcheck style property based testing library.
    • model_mommy - Creating random fixtures for testing in Django.
  • Text Processing

    • difflib - (Python standard library) Helpers for computing deltas.
    • PLY - Implementation of lex and yacc parsing tools for Python
    • pyparsing - A general purpose framework for generating parsers.
    • chardet - Python 2/3 compatible character encoding detector.
    • ftfy - Makes Unicode text less broken and more consistent automagically.
    • fuzzywuzzy - Fuzzy String Matching.
    • pangu.py - Spacing texts for CJK and alphanumerics.
    • pyfiglet - An implementation of figlet written in Python.
    • pypinyin - Convert Chinese hanzi to pinyin.
    • shortuuid - A generator library for concise, unambiguous and URL-safe UUIDs.
    • unidecode - ASCII transliterations of Unicode text.
    • uniout - Print readable chars instead of the escaped string.
    • xpinyin - A library to translate Chinese hanzi (漢字) to pinyin (拼音).
    • awesome-slugify - A Python slugify library that can preserve unicode.
    • python-slugify - A Python slugify library that translates unicode to ASCII.
    • unicode-slugify - A slugifier that generates unicode slugs with Django as a dependency.
    • phonenumbers - Parsing, formatting, storing and validating international phone numbers.
    • PLY - Implementation of lex and yacc parsing tools for Python
    • python-nameparser - Parsing human names into their individual components.
    • python-user-agents - Browser user agent parser.
    • sqlparse - A non-validating SQL parser.
    • Levenshtein - Fast computation of Levenshtein distance and string similarity.
  • Third-party APIs

  • Twitter

  • URL Manipulation

    • furl - A small Python library that makes parsing and manipulating URLs easy.
    • purl - A simple, immutable URL class with a clean API for interrogation and manipulation.
    • pyshorteners - A pure Python URL shortening lib.
    • 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.
  • Video

  • 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.
    • newspaper - News extraction, article extraction and content curation in Python.
    • opengraph - A Python module to parse the Open Graph Protocol
    • 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.
    • toapi - Every web site provides APIs
Sub Categories