2136 lines
94 KiB
HTML
2136 lines
94 KiB
HTML
<h1 id="awesome-python-awesome">Awesome Python <a
|
||
href="https://github.com/sindresorhus/awesome"><img
|
||
src="https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg"
|
||
alt="Awesome" /></a></h1>
|
||
<p>An opinionated list of awesome Python frameworks, libraries, software
|
||
and resources.</p>
|
||
<p>Inspired by <a
|
||
href="https://github.com/ziadoz/awesome-php">awesome-php</a>.</p>
|
||
<ul>
|
||
<li><a href="#awesome-python">Awesome Python</a>
|
||
<ul>
|
||
<li><a href="#admin-panels">Admin Panels</a></li>
|
||
<li><a href="#algorithms-and-design-patterns">Algorithms and Design
|
||
Patterns</a></li>
|
||
<li><a href="#asgi-servers">ASGI Servers</a></li>
|
||
<li><a href="#asynchronous-programming">Asynchronous
|
||
Programming</a></li>
|
||
<li><a href="#audio">Audio</a></li>
|
||
<li><a href="#authentication">Authentication</a></li>
|
||
<li><a href="#build-tools">Build Tools</a></li>
|
||
<li><a href="#built-in-classes-enhancement">Built-in Classes
|
||
Enhancement</a></li>
|
||
<li><a href="#caching">Caching</a></li>
|
||
<li><a href="#chatops-tools">ChatOps Tools</a></li>
|
||
<li><a href="#cms">CMS</a></li>
|
||
<li><a href="#code-analysis">Code Analysis</a></li>
|
||
<li><a href="#command-line-interface-development">Command-line Interface
|
||
Development</a></li>
|
||
<li><a href="#command-line-tools">Command-line Tools</a></li>
|
||
<li><a href="#computer-vision">Computer Vision</a></li>
|
||
<li><a href="#configuration-files">Configuration Files</a></li>
|
||
<li><a href="#cryptography">Cryptography</a></li>
|
||
<li><a href="#data-analysis">Data Analysis</a></li>
|
||
<li><a href="#data-validation">Data Validation</a></li>
|
||
<li><a href="#data-visualization">Data Visualization</a></li>
|
||
<li><a href="#database-drivers">Database Drivers</a></li>
|
||
<li><a href="#database">Database</a></li>
|
||
<li><a href="#date-and-time">Date and Time</a></li>
|
||
<li><a href="#debugging-tools">Debugging Tools</a></li>
|
||
<li><a href="#deep-learning">Deep Learning</a></li>
|
||
<li><a href="#devops-tools">DevOps Tools</a></li>
|
||
<li><a href="#distributed-computing">Distributed Computing</a></li>
|
||
<li><a href="#distribution">Distribution</a></li>
|
||
<li><a href="#documentation">Documentation</a></li>
|
||
<li><a href="#downloader">Downloader</a></li>
|
||
<li><a href="#editor-plugins-and-ides">Editor Plugins and IDEs</a></li>
|
||
<li><a href="#email">Email</a></li>
|
||
<li><a href="#environment-management">Environment Management</a></li>
|
||
<li><a href="#file-manipulation">File Manipulation</a></li>
|
||
<li><a href="#functional-programming">Functional Programming</a></li>
|
||
<li><a href="#game-development">Game Development</a></li>
|
||
<li><a href="#geolocation">Geolocation</a></li>
|
||
<li><a href="#gui-development">GUI Development</a></li>
|
||
<li><a href="#hardware">Hardware</a></li>
|
||
<li><a href="#html-manipulation">HTML Manipulation</a></li>
|
||
<li><a href="#http-clients">HTTP Clients</a></li>
|
||
<li><a href="#image-processing">Image Processing</a></li>
|
||
<li><a href="#implementations">Implementations</a></li>
|
||
<li><a href="#interactive-interpreter">Interactive Interpreter</a></li>
|
||
<li><a href="#internationalization">Internationalization</a></li>
|
||
<li><a href="#job-scheduler">Job Scheduler</a></li>
|
||
<li><a href="#logging">Logging</a></li>
|
||
<li><a href="#machine-learning">Machine Learning</a></li>
|
||
<li><a href="#miscellaneous">Miscellaneous</a></li>
|
||
<li><a href="#natural-language-processing">Natural Language
|
||
Processing</a></li>
|
||
<li><a href="#network-virtualization">Network Virtualization</a></li>
|
||
<li><a href="#news-feed">News Feed</a></li>
|
||
<li><a href="#orm">ORM</a></li>
|
||
<li><a href="#package-management">Package Management</a></li>
|
||
<li><a href="#package-repositories">Package Repositories</a></li>
|
||
<li><a href="#penetration-testing">Penetration testing</a></li>
|
||
<li><a href="#permissions">Permissions</a></li>
|
||
<li><a href="#processes">Processes</a></li>
|
||
<li><a href="#recommender-systems">Recommender Systems</a></li>
|
||
<li><a href="#refactoring">Refactoring</a></li>
|
||
<li><a href="#restful-api">RESTful API</a></li>
|
||
<li><a href="#robotics">Robotics</a></li>
|
||
<li><a href="#rpc-servers">RPC Servers</a></li>
|
||
<li><a href="#science">Science</a></li>
|
||
<li><a href="#search">Search</a></li>
|
||
<li><a href="#serialization">Serialization</a></li>
|
||
<li><a href="#serverless-frameworks">Serverless Frameworks</a></li>
|
||
<li><a href="#shell">Shell</a></li>
|
||
<li><a href="#specific-formats-processing">Specific Formats
|
||
Processing</a></li>
|
||
<li><a href="#static-site-generator">Static Site Generator</a></li>
|
||
<li><a href="#tagging">Tagging</a></li>
|
||
<li><a href="#task-queues">Task Queues</a></li>
|
||
<li><a href="#template-engine">Template Engine</a></li>
|
||
<li><a href="#testing">Testing</a></li>
|
||
<li><a href="#text-processing">Text Processing</a></li>
|
||
<li><a href="#third-party-apis">Third-party APIs</a></li>
|
||
<li><a href="#url-manipulation">URL Manipulation</a></li>
|
||
<li><a href="#video">Video</a></li>
|
||
<li><a href="#web-asset-management">Web Asset Management</a></li>
|
||
<li><a href="#web-content-extracting">Web Content Extracting</a></li>
|
||
<li><a href="#web-crawling">Web Crawling</a></li>
|
||
<li><a href="#web-frameworks">Web Frameworks</a></li>
|
||
<li><a href="#websocket">WebSocket</a></li>
|
||
<li><a href="#wsgi-servers">WSGI Servers</a></li>
|
||
</ul></li>
|
||
<li><a href="#resources">Resources</a>
|
||
<ul>
|
||
<li><a href="#newsletters">Newsletters</a></li>
|
||
<li><a href="#podcasts">Podcasts</a></li>
|
||
</ul></li>
|
||
<li><a href="#contributing">Contributing</a></li>
|
||
</ul>
|
||
<hr />
|
||
<h2 id="admin-panels">Admin Panels</h2>
|
||
<p><em>Libraries for administrative interfaces.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/ajenti/ajenti">ajenti</a> - The admin
|
||
panel your servers deserve.</li>
|
||
<li><a
|
||
href="https://github.com/sehmaschine/django-grappelli">django-grappelli</a>
|
||
- A jazzy skin for the Django Admin-Interface.</li>
|
||
<li><a href="https://github.com/flask-admin/flask-admin">flask-admin</a>
|
||
- Simple and extensible administrative interface framework for
|
||
Flask.</li>
|
||
<li><a href="https://github.com/mher/flower">flower</a> - Real-time
|
||
monitor and web admin for Celery.</li>
|
||
<li><a href="https://github.com/jet-admin/jet-bridge">jet-bridge</a> -
|
||
Admin panel framework for any application with nice UI (ex Jet
|
||
Django).</li>
|
||
<li><a href="https://github.com/wooey/wooey">wooey</a> - A Django app
|
||
which creates automatic web UIs for Python scripts.</li>
|
||
<li><a href="https://github.com/streamlit/streamlit">streamlit</a> - A
|
||
framework which lets you build dashboards, generate reports, or create
|
||
chat apps in minutes.</li>
|
||
</ul>
|
||
<h2 id="algorithms-and-design-patterns">Algorithms and Design
|
||
Patterns</h2>
|
||
<p><em>Python implementation of data structures, algorithms and design
|
||
patterns. Also see <a
|
||
href="https://github.com/tayllan/awesome-algorithms">awesome-algorithms</a>.</em></p>
|
||
<ul>
|
||
<li>Algorithms
|
||
<ul>
|
||
<li><a href="https://github.com/keon/algorithms">algorithms</a> -
|
||
Minimal examples of data structures and algorithms.</li>
|
||
<li><a href="https://github.com/prabhupant/python-ds">python-ds</a> - A
|
||
collection of data structure and algorithms for coding interviews.</li>
|
||
<li><a
|
||
href="https://github.com/grantjenks/python-sortedcontainers">sortedcontainers</a>
|
||
- Fast and pure-Python implementation of sorted collections.</li>
|
||
<li><a href="https://github.com/TheAlgorithms/Python">thealgorithms</a>
|
||
- All Algorithms implemented in Python.</li>
|
||
</ul></li>
|
||
<li>Design Patterns
|
||
<ul>
|
||
<li><a href="https://github.com/tylerlaberge/PyPattyrn">pypattyrn</a> -
|
||
A simple yet effective library for implementing common design
|
||
patterns.</li>
|
||
<li><a
|
||
href="https://github.com/faif/python-patterns">python-patterns</a> - A
|
||
collection of design patterns in Python.</li>
|
||
<li><a
|
||
href="https://github.com/pytransitions/transitions">transitions</a> - A
|
||
lightweight, object-oriented finite state machine implementation.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="asgi-servers">ASGI Servers</h2>
|
||
<p><em><a
|
||
href="https://asgi.readthedocs.io/en/latest/">ASGI</a>-compatible web
|
||
servers.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/django/daphne">daphne</a> - A HTTP,
|
||
HTTP2 and WebSocket protocol server for ASGI and ASGI-HTTP.</li>
|
||
<li><a href="https://github.com/encode/uvicorn">uvicorn</a> - A
|
||
lightning-fast ASGI server implementation, using uvloop and
|
||
httptools.</li>
|
||
<li><a href="https://github.com/pgjones/hypercorn">hypercorn</a> - An
|
||
ASGI and WSGI Server based on Hyper libraries and inspired by
|
||
Gunicorn.</li>
|
||
</ul>
|
||
<h2 id="asynchronous-programming">Asynchronous Programming</h2>
|
||
<p><em>Libraries for asynchronous, concurrent and parallel execution.
|
||
Also see <a
|
||
href="https://github.com/timofurrer/awesome-asyncio">awesome-asyncio</a>.</em></p>
|
||
<ul>
|
||
<li><a href="https://docs.python.org/3/library/asyncio.html">asyncio</a>
|
||
- (Python standard library) Asynchronous I/O, event loop, coroutines and
|
||
tasks.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/timofurrer/awesome-asyncio">awesome-asyncio</a></li>
|
||
</ul></li>
|
||
<li><a
|
||
href="https://docs.python.org/3/library/concurrent.futures.html">concurrent.futures</a>
|
||
- (Python standard library) A high-level interface for asynchronously
|
||
executing callables.</li>
|
||
<li><a
|
||
href="https://docs.python.org/3/library/multiprocessing.html">multiprocessing</a>
|
||
- (Python standard library) Process-based parallelism.</li>
|
||
<li><a href="https://github.com/python-trio/trio">trio</a> - A friendly
|
||
library for async concurrency and I/O.</li>
|
||
<li><a href="https://github.com/twisted/twisted">twisted</a> - An
|
||
event-driven networking engine.</li>
|
||
<li><a href="https://github.com/MagicStack/uvloop">uvloop</a> - Ultra
|
||
fast asyncio event loop.</li>
|
||
<li><a href="https://github.com/eventlet/eventlet">eventlet</a> -
|
||
Asynchronous framework with WSGI support.</li>
|
||
<li><a href="https://github.com/gevent/gevent">gevent</a> - A
|
||
coroutine-based Python networking library that uses <a
|
||
href="https://github.com/python-greenlet/greenlet">greenlet</a>.</li>
|
||
</ul>
|
||
<h2 id="audio">Audio</h2>
|
||
<p><em>Libraries for manipulating audio and its metadata.</em></p>
|
||
<ul>
|
||
<li>Audio
|
||
<ul>
|
||
<li><a href="https://github.com/beetbox/audioread">audioread</a> -
|
||
Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio
|
||
decoding.</li>
|
||
<li><a href="https://github.com/libAudioFlux/audioFlux">audioFlux</a> -
|
||
A library for audio and music analysis, feature extraction.</li>
|
||
<li><a href="https://github.com/worldveil/dejavu">dejavu</a> - Audio
|
||
fingerprinting and recognition.</li>
|
||
<li><a href="https://github.com/keunwoochoi/kapre">kapre</a> - Keras
|
||
Audio Preprocessors.</li>
|
||
<li><a href="https://github.com/librosa/librosa">librosa</a> - Python
|
||
library for audio and music analysis.</li>
|
||
<li><a href="https://github.com/sergree/matchering">matchering</a> - A
|
||
library for automated reference audio mastering.</li>
|
||
<li><a href="http://bspaans.github.io/python-mingus/">mingus</a> - An
|
||
advanced music theory and notation package with MIDI file and playback
|
||
support.</li>
|
||
<li><a
|
||
href="https://github.com/tyiannak/pyAudioAnalysis">pyaudioanalysis</a> -
|
||
Audio feature extraction, classification, segmentation and
|
||
applications.</li>
|
||
<li><a href="https://github.com/jiaaro/pydub">pydub</a> - Manipulate
|
||
audio with a simple and easy high level interface.</li>
|
||
<li><a href="https://github.com/Parisson/TimeSide">timeside</a> - Open
|
||
web audio processing framework.</li>
|
||
</ul></li>
|
||
<li>Metadata
|
||
<ul>
|
||
<li><a href="https://github.com/beetbox/beets">beets</a> - A music
|
||
library manager and <a href="https://musicbrainz.org/">MusicBrainz</a>
|
||
tagger.</li>
|
||
<li><a href="https://github.com/nicfit/eyeD3">eyed3</a> - A tool for
|
||
working with audio files, specifically MP3 files containing ID3
|
||
metadata.</li>
|
||
<li><a href="https://github.com/quodlibet/mutagen">mutagen</a> - A
|
||
Python module to handle audio metadata.</li>
|
||
<li><a href="https://github.com/devsnd/tinytag">tinytag</a> - A library
|
||
for reading music meta data of MP3, OGG, FLAC and Wave files.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="authentication">Authentication</h2>
|
||
<p><em>Libraries for implementing authentications schemes.</em></p>
|
||
<ul>
|
||
<li>OAuth
|
||
<ul>
|
||
<li><a href="https://github.com/lepture/authlib">authlib</a> -
|
||
JavaScript Object Signing and Encryption draft implementation.</li>
|
||
<li><a
|
||
href="https://github.com/pennersr/django-allauth">django-allauth</a> -
|
||
Authentication app for Django that “just works.”</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-oauth-toolkit">django-oauth-toolkit</a>
|
||
- OAuth 2 goodies for Django.</li>
|
||
<li><a href="https://github.com/oauthlib/oauthlib">oauthlib</a> - A
|
||
generic and thorough implementation of the OAuth request-signing
|
||
logic.</li>
|
||
</ul></li>
|
||
<li>JWT
|
||
<ul>
|
||
<li><a href="https://github.com/jpadilla/pyjwt">pyjwt</a> - JSON Web
|
||
Token implementation in Python.</li>
|
||
<li><a href="https://github.com/mpdavis/python-jose/">python-jose</a> -
|
||
A JOSE implementation in Python.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="build-tools">Build Tools</h2>
|
||
<p><em>Compile software from source code.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/openembedded/bitbake">bitbake</a> - A
|
||
make-like build tool for embedded Linux.</li>
|
||
<li><a href="https://github.com/buildout/buildout">buildout</a> - A
|
||
build system for creating, assembling and deploying applications from
|
||
multiple parts.</li>
|
||
<li><a
|
||
href="https://github.com/platformio/platformio-core">platformio</a> - A
|
||
console tool to build code with different development platforms.</li>
|
||
<li><a href="https://github.com/pybuilder/pybuilder">pybuilder</a> - A
|
||
continuous build tool written in pure Python.</li>
|
||
<li><a href="https://github.com/SCons/scons">scons</a> - A software
|
||
construction tool.</li>
|
||
</ul>
|
||
<h2 id="built-in-classes-enhancement">Built-in Classes Enhancement</h2>
|
||
<p><em>Libraries for enhancing Python built-in classes.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/python-attrs/attrs">attrs</a> -
|
||
Replacement for <code>__init__</code>, <code>__eq__</code>,
|
||
<code>__repr__</code>, etc. boilerplate in class definitions.</li>
|
||
<li><a href="https://github.com/jab/bidict">bidict</a> - Efficient,
|
||
Pythonic bidirectional map data structures and related
|
||
functionality..</li>
|
||
<li><a href="https://github.com/cdgriffith/Box">box</a> - Python
|
||
dictionaries with advanced dot notation access.</li>
|
||
<li><a
|
||
href="https://docs.python.org/3/library/dataclasses.html">dataclasses</a>
|
||
- (Python standard library) Data classes.</li>
|
||
<li><a href="https://github.com/carlosescri/DottedDict">dotteddict</a> -
|
||
A library that provides a method of accessing lists and dicts with a
|
||
dotted path notation.</li>
|
||
</ul>
|
||
<h2 id="cms">CMS</h2>
|
||
<p><em>Content Management Systems.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/feincms/feincms">feincms</a> - One of
|
||
the most advanced Content Management Systems built on Django.</li>
|
||
<li><a href="https://github.com/indico/indico">indico</a> - A
|
||
feature-rich event management system, made @ <a
|
||
href="https://en.wikipedia.org/wiki/CERN">CERN</a>.</li>
|
||
<li><a href="https://github.com/wagtail/wagtail">wagtail</a> - A Django
|
||
content management system.</li>
|
||
</ul>
|
||
<h2 id="caching">Caching</h2>
|
||
<p><em>Libraries for caching data.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/bbangert/beaker">beaker</a> - A WSGI
|
||
middleware for sessions and caching.</li>
|
||
<li><a
|
||
href="https://github.com/django-cache-machine/django-cache-machine">django-cache-machine</a>
|
||
- Automatic caching and invalidation for Django models.</li>
|
||
<li><a
|
||
href="https://github.com/Suor/django-cacheops">django-cacheops</a> - A
|
||
slick ORM cache with automatic granular event-driven invalidation.</li>
|
||
<li><a
|
||
href="https://github.com/sqlalchemy/dogpile.cache">dogpile.cache</a> -
|
||
dogpile.cache is a next generation replacement for Beaker made by the
|
||
same authors.</li>
|
||
<li><a href="https://pypi.org/project/HermesCache/">hermescache</a> -
|
||
Python caching library with tag-based invalidation and dogpile effect
|
||
prevention.</li>
|
||
<li><a href="https://github.com/lericson/pylibmc">pylibmc</a> - A Python
|
||
wrapper around the <a
|
||
href="https://libmemcached.org/libMemcached.html">libmemcached</a>
|
||
interface.</li>
|
||
<li><a
|
||
href="https://github.com/grantjenks/python-diskcache">python-diskcache</a>
|
||
- SQLite and file backed cache backend with faster lookups than
|
||
memcached and redis.</li>
|
||
</ul>
|
||
<h2 id="chatops-tools">ChatOps Tools</h2>
|
||
<p><em>Libraries for chatbot development.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/errbotio/errbot/">errbot</a> - The
|
||
easiest and most popular chatbot to implement ChatOps.</li>
|
||
</ul>
|
||
<h2 id="code-analysis">Code Analysis</h2>
|
||
<p><em>Tools of static analysis, linters and code quality checkers. Also
|
||
see <a
|
||
href="https://github.com/mre/awesome-static-analysis">awesome-static-analysis</a>.</em></p>
|
||
<ul>
|
||
<li>Code Analysis
|
||
<ul>
|
||
<li><a href="https://github.com/scottrogowski/code2flow">code2flow</a> -
|
||
Turn your Python and JavaScript code into DOT flowcharts.</li>
|
||
<li><a href="https://github.com/PyCQA/prospector">prospector</a> - A
|
||
tool to analyse Python code.</li>
|
||
<li><a href="https://github.com/jendrikseipp/vulture">vulture</a> - A
|
||
tool for finding and analysing dead Python code.</li>
|
||
</ul></li>
|
||
<li>Code Linters
|
||
<ul>
|
||
<li><a href="https://github.com/PyCQA/flake8">flake8</a> - A wrapper
|
||
around <code>pycodestyle</code>, <code>pyflakes</code> and McCabe.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/DmytroLitvinov/awesome-flake8-extensions">awesome-flake8-extensions</a></li>
|
||
</ul></li>
|
||
<li><a href="https://github.com/pylint-dev/pylint">pylint</a> - A fully
|
||
customizable source code analyzer.</li>
|
||
</ul></li>
|
||
<li>Code Formatters
|
||
<ul>
|
||
<li><a href="https://github.com/psf/black">black</a> - The
|
||
uncompromising Python code formatter.</li>
|
||
<li><a href="https://github.com/timothycrosley/isort">isort</a> - A
|
||
Python utility / library to sort imports.</li>
|
||
<li><a href="https://github.com/google/yapf">yapf</a> - Yet another
|
||
Python code formatter from Google.</li>
|
||
</ul></li>
|
||
<li>Static Type Checkers, also see <a
|
||
href="https://github.com/typeddjango/awesome-python-typing">awesome-python-typing</a>
|
||
<ul>
|
||
<li><a href="https://github.com/python/mypy">mypy</a> - Check variable
|
||
types during compile time.</li>
|
||
<li><a href="https://github.com/facebook/pyre-check">pyre-check</a> -
|
||
Performant type checking.</li>
|
||
<li><a href="https://github.com/python/typeshed">typeshed</a> -
|
||
Collection of library stubs for Python, with static types.</li>
|
||
</ul></li>
|
||
<li>Static Type Annotations Generators
|
||
<ul>
|
||
<li><a href="https://github.com/Instagram/MonkeyType">monkeytype</a> - A
|
||
system for Python that generates static type annotations by collecting
|
||
runtime types.</li>
|
||
<li><a href="https://github.com/google/pytype">pytype</a> - Pytype
|
||
checks and infers types for Python code - without requiring type
|
||
annotations.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="command-line-interface-development">Command-line Interface
|
||
Development</h2>
|
||
<p><em>Libraries for building command-line applications.</em></p>
|
||
<ul>
|
||
<li>Command-line Application Development
|
||
<ul>
|
||
<li><a href="https://github.com/datafolklabs/cement">cement</a> - CLI
|
||
Application Framework for Python.</li>
|
||
<li><a href="https://github.com/pallets/click/">click</a> - A package
|
||
for creating beautiful command line interfaces in a composable way.</li>
|
||
<li><a href="https://github.com/openstack/cliff">cliff</a> - A framework
|
||
for creating command-line programs with multi-level commands.</li>
|
||
<li><a href="https://github.com/google/python-fire">python-fire</a> - A
|
||
library for creating command line interfaces from absolutely any Python
|
||
object.</li>
|
||
<li><a
|
||
href="https://github.com/prompt-toolkit/python-prompt-toolkit">python-prompt-toolkit</a>
|
||
- A library for building powerful interactive command lines.</li>
|
||
</ul></li>
|
||
<li>Terminal Rendering
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/rsalmei/alive-progress">alive-progress</a> - A
|
||
new kind of Progress Bar, with real-time throughput, eta and very cool
|
||
animations.</li>
|
||
<li><a
|
||
href="https://github.com/peterbrittain/asciimatics">asciimatics</a> - A
|
||
package to create full-screen text UIs (from interactive forms to ASCII
|
||
animations).</li>
|
||
<li><a href="https://github.com/glamp/bashplotlib">bashplotlib</a> -
|
||
Making basic plots in the terminal.</li>
|
||
<li><a href="https://github.com/tartley/colorama">colorama</a> -
|
||
Cross-platform colored terminal text.</li>
|
||
<li><a href="https://github.com/Textualize/rich">rich</a> - Python
|
||
library for rich text and beautiful formatting in the terminal. Also
|
||
provides a great <code>RichHandler</code> log handler.</li>
|
||
<li><a href="https://github.com/tqdm/tqdm">tqdm</a> - Fast, extensible
|
||
progress bar for loops and CLI.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="command-line-tools">Command-line Tools</h2>
|
||
<p><em>Useful CLI-based tools for productivity.</em></p>
|
||
<ul>
|
||
<li>Productivity Tools
|
||
<ul>
|
||
<li><a href="https://github.com/copier-org/copier">copier</a> - A
|
||
library and command-line utility for rendering projects templates.</li>
|
||
<li><a
|
||
href="https://github.com/cookiecutter/cookiecutter">cookiecutter</a> - A
|
||
command-line utility that creates projects from cookiecutters (project
|
||
templates).</li>
|
||
<li><a href="https://github.com/sloria/doitlive">doitlive</a> - A tool
|
||
for live presentations in the terminal.</li>
|
||
<li><a href="https://github.com/gleitz/howdoi">howdoi</a> - Instant
|
||
coding answers via the command line.</li>
|
||
<li><a href="https://github.com/pyinvoke/invoke">invoke</a> - A tool for
|
||
managing shell-oriented subprocesses and organizing executable Python
|
||
code into CLI-invokable tasks.</li>
|
||
<li><a href="https://github.com/facebook/PathPicker">pathpicker</a> -
|
||
Select files out of bash output.</li>
|
||
<li><a href="https://github.com/nvbn/thefuck">thefuck</a> - Correcting
|
||
your previous console command.</li>
|
||
<li><a href="https://github.com/tmux-python/tmuxp">tmuxp</a> - A <a
|
||
href="https://github.com/tmux/tmux">tmux</a> session manager.</li>
|
||
<li><a href="https://github.com/timofurrer/try">try</a> - A dead simple
|
||
CLI to try out python packages - it’s never been easier.</li>
|
||
</ul></li>
|
||
<li>CLI Enhancements
|
||
<ul>
|
||
<li><a href="https://github.com/httpie/cli">httpie</a> - A command line
|
||
HTTP client, a user-friendly cURL replacement.</li>
|
||
<li><a href="https://github.com/laixintao/iredis">iredis</a> - Redis CLI
|
||
with autocompletion and syntax highlighting.</li>
|
||
<li><a href="https://github.com/dbcli/litecli">litecli</a> - SQLite CLI
|
||
with autocompletion and syntax highlighting.</li>
|
||
<li><a href="https://github.com/dbcli/mycli">mycli</a> - MySQL CLI with
|
||
autocompletion and syntax highlighting.</li>
|
||
<li><a href="https://github.com/dbcli/pgcli">pgcli</a> - PostgreSQL CLI
|
||
with autocompletion and syntax highlighting.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="computer-vision">Computer Vision</h2>
|
||
<p><em>Libraries for Computer Vision.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/JaidedAI/EasyOCR">easyocr</a> -
|
||
Ready-to-use OCR with 40+ languages supported.</li>
|
||
<li><a href="https://github.com/kornia/kornia/">kornia</a> - Open Source
|
||
Differentiable Computer Vision Library for PyTorch.</li>
|
||
<li><a href="https://opencv.org/">opencv</a> - Open Source Computer
|
||
Vision Library.</li>
|
||
<li><a href="https://github.com/madmaze/pytesseract">pytesseract</a> - A
|
||
wrapper for <a href="https://github.com/tesseract-ocr">Google Tesseract
|
||
OCR</a>.</li>
|
||
<li><a href="https://github.com/sirfz/tesserocr">tesserocr</a> - Another
|
||
simple, Pillow-friendly, wrapper around the <code>tesseract-ocr</code>
|
||
API for OCR.</li>
|
||
</ul>
|
||
<h2 id="configuration-files">Configuration Files</h2>
|
||
<p><em>Libraries for storing and parsing configuration options.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://docs.python.org/3/library/configparser.html">configparser</a>
|
||
- (Python standard library) INI file parser.</li>
|
||
<li><a href="https://github.com/DiffSK/configobj">configobj</a> - INI
|
||
file parser with validation.</li>
|
||
<li><a href="https://github.com/facebookresearch/hydra">hydra</a> -
|
||
Hydra is a framework for elegantly configuring complex
|
||
applications.</li>
|
||
<li><a
|
||
href="https://github.com/HBNetwork/python-decouple">python-decouple</a>
|
||
- Strict separation of settings from code.</li>
|
||
</ul>
|
||
<h2 id="cryptography">Cryptography</h2>
|
||
<ul>
|
||
<li><a href="https://github.com/pyca/cryptography">cryptography</a> - A
|
||
package designed to expose cryptographic primitives and recipes to
|
||
Python developers.</li>
|
||
<li><a href="https://github.com/paramiko/paramiko">paramiko</a> - The
|
||
leading native Python SSHv2 protocol library.</li>
|
||
<li><a href="https://github.com/pyca/pynacl">pynacl</a> - Python binding
|
||
to the Networking and Cryptography (NaCl) library.</li>
|
||
</ul>
|
||
<h2 id="data-analysis">Data Analysis</h2>
|
||
<p><em>Libraries for data analyzing.</em></p>
|
||
<ul>
|
||
<li><a href="http://pandas.pydata.org/">pandas</a> - A library providing
|
||
high-performance, easy-to-use data structures and data analysis
|
||
tools.</li>
|
||
<li><a href="https://github.com/aws/aws-sdk-pandas">aws-sdk-pandas</a> -
|
||
Pandas on AWS.</li>
|
||
<li><a href="https://github.com/simonw/datasette">datasette</a> - An
|
||
open source multi-tool for exploring and publishing data.</li>
|
||
<li><a href="https://github.com/hi-primus/optimus">optimus</a> - Agile
|
||
Data Science Workflows made easy with PySpark.</li>
|
||
</ul>
|
||
<h2 id="data-validation">Data Validation</h2>
|
||
<p><em>Libraries for validating data. Used for forms in many
|
||
cases.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/pyeve/cerberus">cerberus</a> - A
|
||
lightweight and extensible data validation library.</li>
|
||
<li><a href="https://github.com/Pylons/colander">colander</a> -
|
||
Validating and deserializing data obtained via XML, JSON, an HTML form
|
||
post.</li>
|
||
<li><a
|
||
href="https://github.com/python-jsonschema/jsonschema">jsonschema</a> -
|
||
An implementation of <a href="http://json-schema.org/">JSON Schema</a>
|
||
for Python.</li>
|
||
<li><a href="https://github.com/keleshev/schema">schema</a> - A library
|
||
for validating Python data structures.</li>
|
||
<li><a href="https://github.com/schematics/schematics">schematics</a> -
|
||
Data Structure Validation.</li>
|
||
<li><a href="https://github.com/alecthomas/voluptuous">voluptuous</a> -
|
||
A Python data validation library.</li>
|
||
<li><a href="https://github.com/pydantic/pydantic">pydantic</a> - Data
|
||
validation using Python type hints.</li>
|
||
</ul>
|
||
<h2 id="data-visualization">Data Visualization</h2>
|
||
<p><em>Libraries for visualizing data. Also see <a
|
||
href="https://github.com/sorrycc/awesome-javascript#data-visualization">awesome-javascript</a>.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/altair-viz/altair">altair</a> -
|
||
Declarative statistical visualization library for Python.</li>
|
||
<li><a href="https://github.com/bokeh/bokeh">bokeh</a> - Interactive Web
|
||
Plotting for Python.</li>
|
||
<li><a href="https://github.com/bloomberg/bqplot">bqplot</a> -
|
||
Interactive Plotting Library for the Jupyter Notebook.</li>
|
||
<li><a href="https://github.com/SciTools/cartopy">cartopy</a> - A
|
||
cartographic python library with matplotlib support.</li>
|
||
<li><a href="https://github.com/mingrammer/diagrams">diagrams</a> -
|
||
Diagram as Code.</li>
|
||
<li><a href="https://github.com/matplotlib/matplotlib">matplotlib</a> -
|
||
A Python 2D plotting library.</li>
|
||
<li><a href="https://github.com/has2k1/plotnine">plotnine</a> - A
|
||
grammar of graphics for Python based on ggplot2.</li>
|
||
<li><a href="https://github.com/Kozea/pygal">pygal</a> - A Python SVG
|
||
Charts Creator.</li>
|
||
<li><a href="https://github.com/pygraphviz/pygraphviz/">pygraphviz</a> -
|
||
Python interface to <a
|
||
href="http://www.graphviz.org/">Graphviz</a>.</li>
|
||
<li><a href="https://github.com/pyqtgraph/pyqtgraph">pyqtgraph</a> -
|
||
Interactive and realtime 2D/3D/Image plotting and science/engineering
|
||
widgets.</li>
|
||
<li><a href="https://github.com/mwaskom/seaborn">seaborn</a> -
|
||
Statistical data visualization using Matplotlib.</li>
|
||
<li><a href="https://github.com/vispy/vispy">vispy</a> -
|
||
High-performance scientific visualization based on OpenGL.</li>
|
||
</ul>
|
||
<h2 id="database">Database</h2>
|
||
<p><em>Databases implemented in Python.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/patx/pickledb">pickleDB</a> - A simple
|
||
and lightweight key-value store for Python.</li>
|
||
<li><a href="https://github.com/msiemens/tinydb">tinydb</a> - A tiny,
|
||
document-oriented database.</li>
|
||
<li><a href="https://github.com/zopefoundation/ZODB">zodb</a> - A native
|
||
object database for Python. A key-value and object graph database.</li>
|
||
</ul>
|
||
<h2 id="database-drivers">Database Drivers</h2>
|
||
<p><em>Libraries for connecting and operating databases.</em></p>
|
||
<ul>
|
||
<li>MySQL - <a
|
||
href="http://shlomi-noach.github.io/awesome-mysql/">awesome-mysql</a>
|
||
<ul>
|
||
<li><a href="https://github.com/PyMySQL/mysqlclient">mysqlclient</a> -
|
||
MySQL connector with Python 3 support (<a
|
||
href="https://sourceforge.net/projects/mysql-python/">mysql-python</a>
|
||
fork).</li>
|
||
<li><a href="https://github.com/PyMySQL/PyMySQL">pymysql</a> - A pure
|
||
Python MySQL driver compatible to mysql-python.</li>
|
||
</ul></li>
|
||
<li>PostgreSQL - <a
|
||
href="https://github.com/dhamaniasad/awesome-postgres">awesome-postgres</a>
|
||
<ul>
|
||
<li><a href="https://github.com/psycopg/psycopg">psycopg</a> - The most
|
||
popular PostgreSQL adapter for Python.</li>
|
||
</ul></li>
|
||
<li>SQlite - <a
|
||
href="https://github.com/planetopendata/awesome-sqlite">awesome-sqlite</a>
|
||
<ul>
|
||
<li><a href="https://docs.python.org/3/library/sqlite3.html">sqlite3</a>
|
||
- (Python standard library) SQlite interface compliant with DB-API
|
||
2.0.</li>
|
||
<li><a href="https://github.com/simonw/sqlite-utils">sqlite-utils</a> -
|
||
Python CLI utility and library for manipulating SQLite databases.</li>
|
||
</ul></li>
|
||
<li>Other Relational Databases
|
||
<ul>
|
||
<li><a href="https://github.com/pymssql/pymssql">pymssql</a> - A simple
|
||
database interface to Microsoft SQL Server.</li>
|
||
<li><a
|
||
href="https://github.com/mymarilyn/clickhouse-driver">clickhouse-driver</a>
|
||
- Python driver with native interface for ClickHouse.</li>
|
||
</ul></li>
|
||
<li>NoSQL Databases
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/datastax/python-driver">cassandra-driver</a> -
|
||
The Python Driver for Apache Cassandra.</li>
|
||
<li><a
|
||
href="https://github.com/python-happybase/happybase">happybase</a> - A
|
||
developer-friendly library for Apache HBase.</li>
|
||
<li><a href="https://github.com/dpkp/kafka-python">kafka-python</a> -
|
||
The Python client for Apache Kafka.</li>
|
||
<li><a href="https://github.com/mongodb/mongo-python-driver">pymongo</a>
|
||
- The official Python client for MongoDB.</li>
|
||
<li><a href="https://github.com/mongodb/motor">motor</a> - The async
|
||
Python driver for MongoDB.</li>
|
||
<li><a href="https://github.com/redis/redis-py">redis-py</a> - The
|
||
Python client for Redis.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="date-and-time">Date and Time</h2>
|
||
<p><em>Libraries for working with dates and times.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/arrow-py/arrow">arrow</a> - A Python
|
||
library that offers a sensible and human-friendly approach to creating,
|
||
manipulating, formatting and converting dates, times and
|
||
timestamps.</li>
|
||
<li><a href="https://github.com/dateutil/dateutil">dateutil</a> -
|
||
Extensions to the standard Python <a
|
||
href="https://docs.python.org/3/library/datetime.html">datetime</a>
|
||
module.</li>
|
||
<li><a href="https://github.com/sdispater/pendulum">pendulum</a> -
|
||
Python datetimes made easy.</li>
|
||
<li><a href="https://pypi.org/project/pytz/">pytz</a> - World timezone
|
||
definitions, modern and historical. Brings the <a
|
||
href="https://en.wikipedia.org/wiki/Tz_database">tz database</a> into
|
||
Python.</li>
|
||
</ul>
|
||
<h2 id="debugging-tools">Debugging Tools</h2>
|
||
<p><em>Libraries for debugging code.</em></p>
|
||
<ul>
|
||
<li>pdb-like Debugger
|
||
<ul>
|
||
<li><a href="https://github.com/gotcha/ipdb">ipdb</a> - IPython-enabled
|
||
<a href="https://docs.python.org/3/library/pdb.html">pdb</a>.</li>
|
||
<li><a href="https://github.com/inducer/pudb">pudb</a> - A full-screen,
|
||
console-based Python debugger.</li>
|
||
</ul></li>
|
||
<li>Tracing
|
||
<ul>
|
||
<li><a href="https://github.com/ionelmc/python-manhole">manhole</a> -
|
||
Debugging UNIX socket connections and present the stacktraces for all
|
||
threads and an interactive prompt.</li>
|
||
<li><a href="https://github.com/ionelmc/python-hunter">python-hunter</a>
|
||
- A flexible code tracing toolkit.</li>
|
||
</ul></li>
|
||
<li>Profiler
|
||
<ul>
|
||
<li><a href="https://github.com/benfred/py-spy">py-spy</a> - A sampling
|
||
profiler for Python programs. Written in Rust.</li>
|
||
<li><a href="https://github.com/nvdv/vprof">vprof</a> - Visual Python
|
||
profiler.</li>
|
||
</ul></li>
|
||
<li>Others
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-debug-toolbar">django-debug-toolbar</a>
|
||
- Display various debug information for Django.</li>
|
||
<li><a
|
||
href="https://github.com/pallets-eco/flask-debugtoolbar">flask-debugtoolbar</a>
|
||
- A port of the django-debug-toolbar to flask.</li>
|
||
<li><a href="https://github.com/gruns/icecream">icecream</a> - Inspect
|
||
variables, expressions, and program execution with a single, simple
|
||
function call.</li>
|
||
<li><a href="https://github.com/eliben/pyelftools">pyelftools</a> -
|
||
Parsing and analyzing ELF files and DWARF debugging information.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="deep-learning">Deep Learning</h2>
|
||
<p><em>Frameworks for Neural Networks and Deep Learning. Also see <a
|
||
href="https://github.com/ChristosChristofidis/awesome-deep-learning">awesome-deep-learning</a>.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/keras-team/keras">keras</a> - A
|
||
high-level neural networks library and capable of running on top of
|
||
either TensorFlow or Theano.</li>
|
||
<li><a href="https://github.com/pytorch/pytorch">pytorch</a> - Tensors
|
||
and Dynamic neural networks in Python with strong GPU acceleration.</li>
|
||
<li><a
|
||
href="https://github.com/Lightning-AI/pytorch-lightning">pytorch-lightning</a>
|
||
- Deep learning framework to train, deploy, and ship AI products
|
||
Lightning fast.</li>
|
||
<li><a href="https://github.com/tensorflow/tensorflow">tensorflow</a> -
|
||
The most popular Deep Learning framework created by Google.</li>
|
||
<li><a href="https://github.com/Theano/Theano">theano</a> - A library
|
||
for fast numerical computation.</li>
|
||
</ul>
|
||
<h2 id="devops-tools">DevOps Tools</h2>
|
||
<p><em>Software and libraries for DevOps.</em></p>
|
||
<ul>
|
||
<li>Configuration Management
|
||
<ul>
|
||
<li><a href="https://github.com/ansible/ansible">ansible</a> - A
|
||
radically simple IT automation platform.</li>
|
||
<li><a href="https://github.com/canonical/cloud-init">cloudinit</a> - A
|
||
multi-distribution package that handles early initialization of a cloud
|
||
instance.</li>
|
||
<li><a href="https://www.openstack.org/">openstack</a> - Open source
|
||
software for building private and public clouds.</li>
|
||
<li><a href="https://github.com/pyinfra-dev/pyinfra">pyinfra</a> - A
|
||
versatile CLI tools and python libraries to automate
|
||
infrastructure.</li>
|
||
<li><a href="https://github.com/saltstack/salt">saltstack</a> -
|
||
Infrastructure automation and management system.</li>
|
||
</ul></li>
|
||
<li>SSH-style Deployment
|
||
<ul>
|
||
<li><a href="https://github.com/sebastien/cuisine">cuisine</a> -
|
||
Chef-like functionality for Fabric.</li>
|
||
<li><a href="https://github.com/fabric/fabric">fabric</a> - A simple,
|
||
Pythonic tool for remote execution and deployment.</li>
|
||
</ul></li>
|
||
<li>Process Management
|
||
<ul>
|
||
<li><a href="https://github.com/Supervisor/supervisor">supervisor</a> -
|
||
Supervisor process control system for UNIX.</li>
|
||
</ul></li>
|
||
<li>Monitoring
|
||
<ul>
|
||
<li><a href="https://github.com/giampaolo/psutil">psutil</a> - A
|
||
cross-platform process and system utilities module.</li>
|
||
</ul></li>
|
||
<li>Backup
|
||
<ul>
|
||
<li><a href="https://github.com/borgbackup/borg">borg</a> - A
|
||
deduplicating archiver with compression and encryption.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="distributed-computing">Distributed Computing</h2>
|
||
<p><em>Frameworks and libraries for Distributed Computing.</em></p>
|
||
<ul>
|
||
<li>Batch Processing
|
||
<ul>
|
||
<li><a href="https://github.com/dask/dask">dask</a> - A flexible
|
||
parallel computing library for analytic computing.</li>
|
||
<li><a href="https://github.com/spotify/luigi">luigi</a> - A module that
|
||
helps you build complex pipelines of batch jobs.</li>
|
||
<li><a href="https://github.com/apache/spark">PySpark</a> - <a
|
||
href="https://spark.apache.org/">Apache Spark</a> Python API.</li>
|
||
<li><a href="https://github.com/ray-project/ray/">Ray</a> - A system for
|
||
parallel and distributed Python that unifies the machine learning
|
||
ecosystem.</li>
|
||
</ul></li>
|
||
<li>Stream Processing
|
||
<ul>
|
||
<li><a href="https://github.com/robinhood/faust">faust</a> - A stream
|
||
processing library, porting the ideas from <a
|
||
href="https://kafka.apache.org/documentation/streams/">Kafka Streams</a>
|
||
to Python.</li>
|
||
<li><a href="https://github.com/Parsely/streamparse">streamparse</a> -
|
||
Run Python code against real-time streams of data via <a
|
||
href="http://storm.apache.org/">Apache Storm</a>.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="distribution">Distribution</h2>
|
||
<p><em>Libraries to create packaged executables for release
|
||
distribution.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/ronaldoussoren/py2app">py2app</a> -
|
||
Freezes Python scripts (Mac OS X).</li>
|
||
<li><a href="https://github.com/py2exe/py2exe">py2exe</a> - Freezes
|
||
Python scripts (Windows).</li>
|
||
<li><a href="https://github.com/dashingsoft/pyarmor">pyarmor</a> - A
|
||
tool used to obfuscate python scripts, bind obfuscated scripts to fixed
|
||
machine or expire obfuscated scripts.</li>
|
||
<li><a href="https://github.com/pyinstaller/pyinstaller">pyinstaller</a>
|
||
- Converts Python programs into stand-alone executables
|
||
(cross-platform).</li>
|
||
<li><a href="https://github.com/linkedin/shiv">shiv</a> - A command line
|
||
utility for building fully self-contained zipapps (PEP 441), but with
|
||
all their dependencies included.</li>
|
||
</ul>
|
||
<h2 id="documentation">Documentation</h2>
|
||
<p><em>Libraries for generating project documentation.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/sphinx-doc/sphinx/">sphinx</a> - Python
|
||
Documentation generator.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/yoloseem/awesome-sphinxdoc">awesome-sphinxdoc</a></li>
|
||
</ul></li>
|
||
<li><a href="https://github.com/mitmproxy/pdoc">pdoc</a> - Epydoc
|
||
replacement to auto generate API documentation for Python
|
||
libraries.</li>
|
||
</ul>
|
||
<h2 id="downloader">Downloader</h2>
|
||
<p><em>Libraries for downloading.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/jindaxiang/akshare">akshare</a> - A
|
||
financial data interface library, built for human beings!</li>
|
||
<li><a href="https://github.com/s3tools/s3cmd">s3cmd</a> - A command
|
||
line tool for managing Amazon S3 and CloudFront.</li>
|
||
<li><a href="https://github.com/ytdl-org/youtube-dl/">youtube-dl</a> - A
|
||
command-line program to download videos from YouTube and other video
|
||
sites.</li>
|
||
</ul>
|
||
<h2 id="editor-plugins-and-ides">Editor Plugins and IDEs</h2>
|
||
<ul>
|
||
<li>Emacs
|
||
<ul>
|
||
<li><a href="https://github.com/jorgenschaefer/elpy">elpy</a> - Emacs
|
||
Python Development Environment.</li>
|
||
</ul></li>
|
||
<li>Vim
|
||
<ul>
|
||
<li><a href="https://github.com/davidhalter/jedi-vim">jedi-vim</a> - Vim
|
||
bindings for the Jedi auto-completion library for Python.</li>
|
||
<li><a href="https://github.com/python-mode/python-mode">python-mode</a>
|
||
- An all in one plugin for turning Vim into a Python IDE.</li>
|
||
<li><a
|
||
href="https://github.com/Valloric/YouCompleteMe">YouCompleteMe</a> -
|
||
Includes <a href="https://github.com/davidhalter/jedi">Jedi</a>-based
|
||
completion engine for Python.</li>
|
||
</ul></li>
|
||
<li>Visual Studio
|
||
<ul>
|
||
<li><a href="https://github.com/Microsoft/PTVS">PTVS</a> - Python Tools
|
||
for Visual Studio.</li>
|
||
</ul></li>
|
||
<li>Visual Studio Code
|
||
<ul>
|
||
<li><a
|
||
href="https://marketplace.visualstudio.com/items?itemName=ms-python.python">Python</a>
|
||
- The official VSCode extension with rich support for Python.</li>
|
||
</ul></li>
|
||
<li>IDE
|
||
<ul>
|
||
<li><a href="https://www.jetbrains.com/pycharm/">PyCharm</a> -
|
||
Commercial Python IDE by JetBrains. Has free community edition
|
||
available.</li>
|
||
<li><a href="https://github.com/spyder-ide/spyder">spyder</a> - Open
|
||
Source Python IDE.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="email">Email</h2>
|
||
<p><em>Libraries for sending and parsing email.</em></p>
|
||
<ul>
|
||
<li>Mail Servers
|
||
<ul>
|
||
<li><a href="https://github.com/modoboa/modoboa">modoboa</a> - A mail
|
||
hosting and management platform including a modern Web UI.</li>
|
||
<li><a href="https://github.com/moggers87/salmon">salmon</a> - A Python
|
||
Mail Server.</li>
|
||
</ul></li>
|
||
<li>Clients
|
||
<ul>
|
||
<li><a href="https://github.com/martinrusev/imbox">imbox</a> - Python
|
||
IMAP for Humans.</li>
|
||
<li><a href="https://github.com/kootenpv/yagmail">yagmail</a> - Yet
|
||
another Gmail/SMTP client.</li>
|
||
</ul></li>
|
||
<li>Others
|
||
<ul>
|
||
<li><a href="https://github.com/mailgun/flanker">flanker</a> - An email
|
||
address and Mime parsing library.</li>
|
||
<li><a href="https://github.com/marrow/mailer">mailer</a> -
|
||
High-performance extensible mail delivery framework.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="environment-management">Environment Management</h2>
|
||
<p><em>Libraries for Python version and virtual environment
|
||
management.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/pyenv/pyenv">pyenv</a> - Simple Python
|
||
version management.</li>
|
||
<li><a href="https://github.com/pypa/virtualenv">virtualenv</a> - A tool
|
||
to create isolated Python environments.</li>
|
||
</ul>
|
||
<h2 id="file-manipulation">File Manipulation</h2>
|
||
<p><em>Libraries for file manipulation.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://docs.python.org/3/library/mimetypes.html">mimetypes</a> -
|
||
(Python standard library) Map filenames to MIME types.</li>
|
||
<li><a href="https://docs.python.org/3/library/pathlib.html">pathlib</a>
|
||
- (Python standard library) An cross-platform, object-oriented path
|
||
library.</li>
|
||
<li><a href="https://github.com/jaraco/path.py">path.py</a> - A module
|
||
wrapper for <a
|
||
href="https://docs.python.org/3/library/os.path.html">os.path</a>.</li>
|
||
<li><a href="https://github.com/ahupp/python-magic">python-magic</a> - A
|
||
Python interface to the libmagic file type identification library.</li>
|
||
<li><a href="https://github.com/gorakhargosh/watchdog">watchdog</a> -
|
||
API and shell utilities to monitor file system events.</li>
|
||
</ul>
|
||
<h2 id="functional-programming">Functional Programming</h2>
|
||
<p><em>Functional Programming with Python.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/evhub/coconut">coconut</a> - A variant
|
||
of Python built for simple, elegant, Pythonic functional
|
||
programming.</li>
|
||
<li><a href="https://github.com/Suor/funcy">funcy</a> - A fancy and
|
||
practical functional tools.</li>
|
||
<li><a
|
||
href="https://github.com/erikrose/more-itertools">more-itertools</a> -
|
||
More routines for operating on iterables, beyond
|
||
<code>itertools</code>.</li>
|
||
<li><a href="https://github.com/dry-python/returns">returns</a> - A set
|
||
of type-safe monads, transformers, and composition utilities.</li>
|
||
<li><a href="https://github.com/pytoolz/cytoolz/">cytoolz</a> - Cython
|
||
implementation of <code>Toolz</code>: High performance functional
|
||
utilities.</li>
|
||
<li><a href="https://github.com/pytoolz/toolz">toolz</a> - A collection
|
||
of functional utilities for iterators, functions, and dictionaries.</li>
|
||
</ul>
|
||
<h2 id="gui-development">GUI Development</h2>
|
||
<p><em>Libraries for working with graphical user interface
|
||
applications.</em></p>
|
||
<ul>
|
||
<li><a href="https://docs.python.org/3/library/curses.html">curses</a> -
|
||
Built-in wrapper for <a
|
||
href="http://www.gnu.org/software/ncurses/">ncurses</a> used to create
|
||
terminal GUI applications.</li>
|
||
<li><a href="https://github.com/ChrisKnott/Eel">Eel</a> - A library for
|
||
making simple Electron-like offline HTML/JS GUI apps.</li>
|
||
<li><a href="https://github.com/nucleic/enaml">enaml</a> - Creating
|
||
beautiful user-interfaces with Declarative Syntax like QML.</li>
|
||
<li><a href="https://github.com/zoofIO/flexx">Flexx</a> - Flexx is a
|
||
pure Python toolkit for creating GUI’s, that uses web technology for its
|
||
rendering.</li>
|
||
<li><a href="https://github.com/chriskiehl/Gooey">Gooey</a> - Turn
|
||
command line programs into a full GUI application with one line.</li>
|
||
<li><a href="https://kivy.org/">kivy</a> - A library for creating NUI
|
||
applications, running on Windows, Linux, Mac OS X, Android and iOS.</li>
|
||
<li><a href="https://github.com/pyglet/pyglet">pyglet</a> - A
|
||
cross-platform windowing and multimedia library for Python.</li>
|
||
<li><a href="https://pygobject.readthedocs.io/">PyGObject</a> - Python
|
||
Bindings for GLib/GObject/GIO/GTK+ (GTK+3).</li>
|
||
<li><a href="https://doc.qt.io/qtforpython/">PyQt</a> - Python bindings
|
||
for the <a href="https://www.qt.io/">Qt</a> cross-platform application
|
||
and UI framework.</li>
|
||
<li><a href="https://github.com/PySimpleGUI/PySimpleGUI">PySimpleGUI</a>
|
||
- Wrapper for tkinter, Qt, WxPython and Remi.</li>
|
||
<li><a href="https://github.com/r0x0r/pywebview/">pywebview</a> - A
|
||
lightweight cross-platform native wrapper around a webview
|
||
component.</li>
|
||
<li><a href="https://wiki.python.org/moin/TkInter">Tkinter</a> - Tkinter
|
||
is Python’s de-facto standard GUI package.</li>
|
||
<li><a href="https://github.com/pybee/toga">Toga</a> - A Python native,
|
||
OS native GUI toolkit.</li>
|
||
<li><a href="http://urwid.org/">urwid</a> - A library for creating
|
||
terminal GUI applications with strong support for widgets, events, rich
|
||
colors, etc.</li>
|
||
<li><a href="https://wxpython.org/">wxPython</a> - A blending of the
|
||
wxWidgets C++ class library with the Python.</li>
|
||
<li><a href="https://github.com/RaylockLLC/DearPyGui/">DearPyGui</a> - A
|
||
Simple GPU accelerated Python GUI framework</li>
|
||
</ul>
|
||
<h2 id="graphql">GraphQL</h2>
|
||
<p><em>Libraries for working with GraphQL.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/graphql-python/graphene/">graphene</a> -
|
||
GraphQL framework for Python.</li>
|
||
</ul>
|
||
<h2 id="game-development">Game Development</h2>
|
||
<p><em>Awesome game development libraries.</em></p>
|
||
<ul>
|
||
<li><a href="https://api.arcade.academy/en/latest/">Arcade</a> - Arcade
|
||
is a modern Python framework for crafting games with compelling graphics
|
||
and sound.</li>
|
||
<li><a href="https://www.cocos.com/en/cocos2d-x">Cocos2d</a> - cocos2d
|
||
is a framework for building 2D games, demos, and other
|
||
graphical/interactive applications.</li>
|
||
<li><a href="http://www.harfang3d.com">Harfang3D</a> - Python framework
|
||
for 3D, VR and game development.</li>
|
||
<li><a href="https://www.panda3d.org/">Panda3D</a> - 3D game engine
|
||
developed by Disney.</li>
|
||
<li><a href="http://www.pygame.org/news.html">Pygame</a> - Pygame is a
|
||
set of Python modules designed for writing games.</li>
|
||
<li><a href="http://www.ogre3d.org/tikiwiki/PyOgre">PyOgre</a> - Python
|
||
bindings for the Ogre 3D render engine, can be used for games,
|
||
simulations, anything 3D.</li>
|
||
<li><a href="http://pyopengl.sourceforge.net/">PyOpenGL</a> - Python
|
||
ctypes bindings for OpenGL and it’s related APIs.</li>
|
||
<li><a href="https://pysdl2.readthedocs.io">PySDL2</a> - A ctypes based
|
||
wrapper for the SDL2 library.</li>
|
||
<li><a href="https://www.renpy.org/">RenPy</a> - A Visual Novel
|
||
engine.</li>
|
||
</ul>
|
||
<h2 id="geolocation">Geolocation</h2>
|
||
<p><em>Libraries for geocoding addresses and working with latitudes and
|
||
longitudes.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/SmileyChris/django-countries">django-countries</a>
|
||
- A Django app that provides a country field for models and forms.</li>
|
||
<li><a
|
||
href="https://docs.djangoproject.com/en/dev/ref/contrib/gis/">geodjango</a>
|
||
- A world-class geographic web framework.</li>
|
||
<li><a href="https://github.com/jazzband/geojson">geojson</a> - Python
|
||
bindings and utilities for GeoJSON.</li>
|
||
<li><a href="https://github.com/geopy/geopy">geopy</a> - Python
|
||
Geocoding Toolbox.</li>
|
||
</ul>
|
||
<h2 id="html-manipulation">HTML Manipulation</h2>
|
||
<p><em>Libraries for working with HTML and XML.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://www.crummy.com/software/BeautifulSoup/bs4/doc/">beautifulsoup</a>
|
||
- Providing Pythonic idioms for iterating, searching, and modifying HTML
|
||
or XML.</li>
|
||
<li><a href="https://github.com/mozilla/bleach">bleach</a> - A
|
||
whitelist-based HTML sanitization and text linkification library.</li>
|
||
<li><a href="https://pypi.org/project/cssutils/">cssutils</a> - A CSS
|
||
library for Python.</li>
|
||
<li><a href="https://github.com/html5lib/html5lib-python">html5lib</a> -
|
||
A standards-compliant library for parsing and serializing HTML documents
|
||
and fragments.</li>
|
||
<li><a href="http://lxml.de/">lxml</a> - A very fast, easy-to-use and
|
||
versatile library for handling HTML and XML.</li>
|
||
<li><a href="https://github.com/pallets/markupsafe">markupsafe</a> -
|
||
Implements a XML/HTML/XHTML Markup safe string for Python.</li>
|
||
<li><a href="https://github.com/gawel/pyquery">pyquery</a> - A
|
||
jQuery-like library for parsing HTML.</li>
|
||
<li><a href="https://github.com/stchris/untangle">untangle</a> -
|
||
Converts XML documents to Python objects for easy access.</li>
|
||
<li><a href="http://weasyprint.org">WeasyPrint</a> - A visual rendering
|
||
engine for HTML and CSS that can export to PDF.</li>
|
||
<li><a
|
||
href="https://xmldataset.readthedocs.io/en/latest/">xmldataset</a> -
|
||
Simple XML Parsing.</li>
|
||
<li><a href="https://github.com/martinblech/xmltodict">xmltodict</a> -
|
||
Working with XML feel like you are working with JSON.</li>
|
||
</ul>
|
||
<h2 id="http-clients">HTTP Clients</h2>
|
||
<p><em>Libraries for working with HTTP.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/encode/httpx">httpx</a> - A next
|
||
generation HTTP client for Python.</li>
|
||
<li><a href="https://github.com/psf/requests">requests</a> - HTTP
|
||
Requests for Humans.</li>
|
||
<li><a href="https://github.com/twisted/treq">treq</a> - Python requests
|
||
like API built on top of Twisted’s HTTP client.</li>
|
||
<li><a href="https://github.com/urllib3/urllib3">urllib3</a> - A HTTP
|
||
library with thread-safe connection pooling, file post support, sanity
|
||
friendly.</li>
|
||
</ul>
|
||
<h2 id="hardware">Hardware</h2>
|
||
<p><em>Libraries for programming with hardware.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/boppreh/keyboard">keyboard</a> - Hook
|
||
and simulate global keyboard events on Windows and Linux.</li>
|
||
<li><a href="https://github.com/boppreh/mouse">mouse</a> - Hook and
|
||
simulate global mouse events on Windows and Linux.</li>
|
||
<li><a href="https://github.com/moses-palmer/pynput">pynput</a> - A
|
||
library to control and monitor input devices.</li>
|
||
<li><a href="https://github.com/secdev/scapy">scapy</a> - A brilliant
|
||
packet manipulation library.</li>
|
||
</ul>
|
||
<h2 id="image-processing">Image Processing</h2>
|
||
<p><em>Libraries for manipulating images.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/python-pillow/Pillow">pillow</a> -
|
||
Pillow is the friendly <a
|
||
href="http://www.pythonware.com/products/pil/">PIL</a> fork.</li>
|
||
<li><a
|
||
href="https://github.com/WhyNotHugo/python-barcode">python-barcode</a> -
|
||
Create barcodes in Python with no extra dependencies.</li>
|
||
<li><a href="http://github.com/pymatting/pymatting">pymatting</a> - A
|
||
library for alpha matting.</li>
|
||
<li><a
|
||
href="https://github.com/lincolnloop/python-qrcode">python-qrcode</a> -
|
||
A pure Python QR Code generator.</li>
|
||
<li><a href="https://github.com/dylanaraps/pywal">pywal</a> - A tool
|
||
that generates color schemes from images.</li>
|
||
<li><a href="https://github.com/libvips/pyvips">pyvips</a> - A fast
|
||
image processing library with low memory needs.</li>
|
||
<li><a href="https://github.com/fogleman/Quads">quads</a> - Computer art
|
||
based on quadtrees.</li>
|
||
<li><a href="http://scikit-image.org/">scikit-image</a> - A Python
|
||
library for (scientific) image processing.</li>
|
||
<li><a href="https://github.com/thumbor/thumbor">thumbor</a> - A smart
|
||
imaging service. It enables on-demand crop, re-sizing and flipping of
|
||
images.</li>
|
||
<li><a href="https://github.com/emcconville/wand">wand</a> - Python
|
||
bindings for <a
|
||
href="http://www.imagemagick.org/script/magick-wand.php">MagickWand</a>,
|
||
C API for ImageMagick.</li>
|
||
</ul>
|
||
<h2 id="implementations">Implementations</h2>
|
||
<p><em>Implementations of Python.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/python/cpython">cpython</a> -
|
||
<strong>Default, most widely used implementation of the Python
|
||
programming language written in C.</strong></li>
|
||
<li><a href="https://github.com/cython/cython">cython</a> - Optimizing
|
||
Static Compiler for Python.</li>
|
||
<li><a href="https://github.com/metawilm/cl-python">clpython</a> -
|
||
Implementation of the Python programming language written in Common
|
||
Lisp.</li>
|
||
<li><a
|
||
href="https://github.com/IronLanguages/ironpython3">ironpython</a> -
|
||
Implementation of the Python programming language written in C#.</li>
|
||
<li><a href="https://github.com/micropython/micropython">micropython</a>
|
||
- A lean and efficient Python programming language implementation.</li>
|
||
<li><a href="https://github.com/numba/numba">numba</a> - Python JIT
|
||
compiler to LLVM aimed at scientific Python.</li>
|
||
<li><a href="https://github.com/Maratyszcza/PeachPy">peachpy</a> -
|
||
x86-64 assembler embedded in Python.</li>
|
||
<li><a href="https://foss.heptapod.net/pypy/pypy">pypy</a> - A very fast
|
||
and compliant implementation of the Python language.</li>
|
||
<li><a href="https://github.com/pyston/pyston/">pyston</a> - A Python
|
||
implementation using JIT techniques.</li>
|
||
</ul>
|
||
<h2 id="interactive-interpreter">Interactive Interpreter</h2>
|
||
<p><em>Interactive Python interpreters (REPL).</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/bpython/bpython">bpython</a> - A fancy
|
||
interface to the Python interpreter.</li>
|
||
<li><a href="https://jupyter.org">Jupyter Notebook (IPython)</a> - A
|
||
rich toolkit to help you make the most out of using Python
|
||
interactively.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/markusschanta/awesome-jupyter">awesome-jupyter</a></li>
|
||
</ul></li>
|
||
<li><a href="https://github.com/jonathanslenders/ptpython">ptpython</a>
|
||
- Advanced Python REPL built on top of the <a
|
||
href="https://github.com/jonathanslenders/python-prompt-toolkit">python-prompt-toolkit</a>.</li>
|
||
</ul>
|
||
<h2 id="internationalization">Internationalization</h2>
|
||
<p><em>Libraries for working with i18n.</em></p>
|
||
<ul>
|
||
<li><a href="http://babel.pocoo.org/en/latest/">Babel</a> - An
|
||
internationalization library for Python.</li>
|
||
<li><a href="https://github.com/ovalhub/pyicu">PyICU</a> - A wrapper of
|
||
International Components for Unicode C++ library (<a
|
||
href="http://site.icu-project.org/">ICU</a>).</li>
|
||
</ul>
|
||
<h2 id="job-scheduler">Job Scheduler</h2>
|
||
<p><em>Libraries for scheduling jobs.</em></p>
|
||
<ul>
|
||
<li><a href="https://airflow.apache.org/">Airflow</a> - Airflow is a
|
||
platform to programmatically author, schedule and monitor
|
||
workflows.</li>
|
||
<li><a
|
||
href="http://apscheduler.readthedocs.io/en/latest/">APScheduler</a> - A
|
||
light but powerful in-process task scheduler that lets you schedule
|
||
functions.</li>
|
||
<li><a
|
||
href="https://github.com/thauber/django-schedule">django-schedule</a> -
|
||
A calendaring app for Django.</li>
|
||
<li><a href="http://pydoit.org/">doit</a> - A task runner and build
|
||
tool.</li>
|
||
<li><a href="https://github.com/gunnery/gunnery">gunnery</a> -
|
||
Multipurpose task execution tool for distributed systems with web-based
|
||
interface.</li>
|
||
<li><a href="https://joblib.readthedocs.io/">Joblib</a> - A set of tools
|
||
to provide lightweight pipelining in Python.</li>
|
||
<li><a href="https://github.com/fengsp/plan">Plan</a> - Writing crontab
|
||
file in Python like a charm.</li>
|
||
<li><a href="https://github.com/PrefectHQ/prefect">Prefect</a> - A
|
||
modern workflow orchestration framework that makes it easy to build,
|
||
schedule and monitor robust data pipelines.</li>
|
||
<li><a href="https://github.com/dbader/schedule">schedule</a> - Python
|
||
job scheduling for humans.</li>
|
||
<li><a href="https://github.com/knipknap/SpiffWorkflow">Spiff</a> - A
|
||
powerful workflow engine implemented in pure Python.</li>
|
||
<li><a
|
||
href="https://docs.openstack.org/developer/taskflow/">TaskFlow</a> - A
|
||
Python library that helps to make task execution easy, consistent and
|
||
reliable.</li>
|
||
</ul>
|
||
<h2 id="logging">Logging</h2>
|
||
<p><em>Libraries for generating and working with logs.</em></p>
|
||
<ul>
|
||
<li><a href="http://logbook.readthedocs.io/en/stable/">logbook</a> -
|
||
Logging replacement for Python.</li>
|
||
<li><a href="https://docs.python.org/3/library/logging.html">logging</a>
|
||
- (Python standard library) Logging facility for Python.</li>
|
||
<li><a href="https://github.com/Delgan/loguru">loguru</a> - Library
|
||
which aims to bring enjoyable logging in Python.</li>
|
||
<li><a
|
||
href="https://github.com/getsentry/sentry-python">sentry-python</a> -
|
||
Sentry SDK for Python.</li>
|
||
<li><a href="https://www.structlog.org/en/stable/">structlog</a> -
|
||
Structured logging made easy.</li>
|
||
</ul>
|
||
<h2 id="machine-learning">Machine Learning</h2>
|
||
<p><em>Libraries for Machine Learning. Also see <a
|
||
href="https://github.com/josephmisiti/awesome-machine-learning#python">awesome-machine-learning</a>.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/openai/gym">gym</a> - A toolkit for
|
||
developing and comparing reinforcement learning algorithms.</li>
|
||
<li><a href="https://github.com/h2oai/h2o-3">H2O</a> - Open Source Fast
|
||
Scalable Machine Learning Platform.</li>
|
||
<li><a href="https://github.com/benhamner/Metrics">Metrics</a> - Machine
|
||
learning evaluation metrics.</li>
|
||
<li><a href="https://github.com/numenta/nupic">NuPIC</a> - Numenta
|
||
Platform for Intelligent Computing.</li>
|
||
<li><a href="http://scikit-learn.org/">scikit-learn</a> - The most
|
||
popular Python library for Machine Learning.</li>
|
||
<li><a href="http://spark.apache.org/docs/latest/ml-guide.html">Spark
|
||
ML</a> - <a href="http://spark.apache.org/">Apache Spark</a>’s scalable
|
||
Machine Learning library.</li>
|
||
<li><a
|
||
href="https://github.com/josephreisinger/vowpal_porpoise">vowpal_porpoise</a>
|
||
- A lightweight Python wrapper for <a
|
||
href="https://github.com/JohnLangford/vowpal_wabbit/">Vowpal
|
||
Wabbit</a>.</li>
|
||
<li><a href="https://github.com/dmlc/xgboost">xgboost</a> - A scalable,
|
||
portable, and distributed gradient boosting library.</li>
|
||
<li><a href="https://github.com/mindsdb/mindsdb">MindsDB</a> - MindsDB
|
||
is an open source AI layer for existing databases that allows you to
|
||
effortlessly develop, train and deploy state-of-the-art machine learning
|
||
models using standard queries.</li>
|
||
</ul>
|
||
<h2 id="microsoft-windows">Microsoft Windows</h2>
|
||
<p><em>Python programming on Microsoft Windows.</em></p>
|
||
<ul>
|
||
<li><a href="http://python-xy.github.io/">Python(x,y)</a> -
|
||
Scientific-applications-oriented Python Distribution based on Qt and
|
||
Spyder.</li>
|
||
<li><a href="http://www.lfd.uci.edu/~gohlke/pythonlibs/">pythonlibs</a>
|
||
- Unofficial Windows binaries for Python extension packages.</li>
|
||
<li><a href="https://github.com/pythonnet/pythonnet">PythonNet</a> -
|
||
Python Integration with the .NET Common Language Runtime (CLR).</li>
|
||
<li><a href="https://github.com/mhammond/pywin32">PyWin32</a> - Python
|
||
Extensions for Windows.</li>
|
||
<li><a href="https://winpython.github.io/">WinPython</a> - Portable
|
||
development environment for Windows 7/8.</li>
|
||
</ul>
|
||
<h2 id="miscellaneous">Miscellaneous</h2>
|
||
<p><em>Useful libraries or tools that don’t fit in the categories
|
||
above.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/jek/blinker">blinker</a> - A fast Python
|
||
in-process signal/event dispatching system.</li>
|
||
<li><a href="https://github.com/mahmoud/boltons">boltons</a> - A set of
|
||
pure-Python utilities.</li>
|
||
<li><a href="https://github.com/pallets/itsdangerous">itsdangerous</a> -
|
||
Various helpers to pass trusted data to untrusted environments.</li>
|
||
<li><a href="https://github.com/magenta/magenta">magenta</a> - A tool to
|
||
generate music and art using artificial intelligence.</li>
|
||
<li><a href="https://github.com/mitsuhiko/pluginbase">pluginbase</a> - A
|
||
simple but flexible plugin system for Python.</li>
|
||
<li><a href="http://www.tryton.org/">tryton</a> - A general purpose
|
||
business framework.</li>
|
||
</ul>
|
||
<h2 id="natural-language-processing">Natural Language Processing</h2>
|
||
<p><em>Libraries for working with human languages.</em></p>
|
||
<ul>
|
||
<li>General
|
||
<ul>
|
||
<li><a href="https://github.com/RaRe-Technologies/gensim">gensim</a> -
|
||
Topic Modeling for Humans.</li>
|
||
<li><a href="https://github.com/saffsd/langid.py">langid.py</a> -
|
||
Stand-alone language identification system.</li>
|
||
<li><a href="http://www.nltk.org/">nltk</a> - A leading platform for
|
||
building Python programs to work with human language data.</li>
|
||
<li><a href="https://github.com/clips/pattern">pattern</a> - A web
|
||
mining module.</li>
|
||
<li><a href="https://github.com/aboSamoor/polyglot">polyglot</a> -
|
||
Natural language pipeline supporting hundreds of languages.</li>
|
||
<li><a href="https://github.com/facebookresearch/pytext">pytext</a> - A
|
||
natural language modeling framework based on PyTorch.</li>
|
||
<li><a href="https://github.com/PetrochukM/PyTorch-NLP">PyTorch-NLP</a>
|
||
- A toolkit enabling rapid deep learning NLP prototyping for
|
||
research.</li>
|
||
<li><a href="https://spacy.io/">spacy</a> - A library for
|
||
industrial-strength natural language processing in Python and
|
||
Cython.</li>
|
||
<li><a href="https://github.com/stanfordnlp/stanza">Stanza</a> - The
|
||
Stanford NLP Group’s official Python library, supporting 60+
|
||
languages.</li>
|
||
</ul></li>
|
||
<li>Chinese
|
||
<ul>
|
||
<li><a href="https://github.com/fighting41love/funNLP">funNLP</a> - A
|
||
collection of tools and datasets for Chinese NLP.</li>
|
||
<li><a href="https://github.com/fxsjy/jieba">jieba</a> - The most
|
||
popular Chinese text segmentation library.</li>
|
||
<li><a
|
||
href="https://github.com/lancopku/pkuseg-python">pkuseg-python</a> - A
|
||
toolkit for Chinese word segmentation in various domains.</li>
|
||
<li><a href="https://github.com/isnowfy/snownlp">snownlp</a> - A library
|
||
for processing Chinese text.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="network-virtualization">Network Virtualization</h2>
|
||
<p><em>Tools and libraries for Virtual Networking and SDN (Software
|
||
Defined Networking).</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/mininet/mininet">mininet</a> - A popular
|
||
network emulator and API written in Python.</li>
|
||
<li><a href="https://github.com/napalm-automation/napalm">napalm</a> -
|
||
Cross-vendor API to manipulate network devices.</li>
|
||
<li><a href="https://github.com/noxrepo/pox">pox</a> - A Python-based
|
||
SDN control applications, such as OpenFlow SDN controllers.</li>
|
||
</ul>
|
||
<h2 id="news-feed">News Feed</h2>
|
||
<p><em>Libraries for building user’s activities.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/justquick/django-activity-stream">django-activity-stream</a>
|
||
- Generating generic activity streams from the actions on your
|
||
site.</li>
|
||
<li><a href="https://github.com/tschellenbach/Stream-Framework">Stream
|
||
Framework</a> - Building news feed and notification systems using
|
||
Cassandra and Redis.</li>
|
||
</ul>
|
||
<h2 id="orm">ORM</h2>
|
||
<p><em>Libraries that implement Object-Relational Mapping or data
|
||
mapping techniques.</em></p>
|
||
<ul>
|
||
<li>Relational Databases
|
||
<ul>
|
||
<li><a
|
||
href="https://docs.djangoproject.com/en/dev/topics/db/models/">Django
|
||
Models</a> - The Django ORM.</li>
|
||
<li><a href="https://www.sqlalchemy.org/">SQLAlchemy</a> - The Python
|
||
SQL Toolkit and Object Relational Mapper.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/dahlia/awesome-sqlalchemy">awesome-sqlalchemy</a></li>
|
||
</ul></li>
|
||
<li><a href="https://github.com/pudo/dataset">dataset</a> - Store Python
|
||
dicts in a database - works with SQLite, MySQL, and PostgreSQL.</li>
|
||
<li><a href="https://github.com/sdispater/orator">orator</a> - The
|
||
Orator ORM provides a simple yet beautiful ActiveRecord
|
||
implementation.</li>
|
||
<li><a href="https://github.com/encode/orm">orm</a> - An async ORM.</li>
|
||
<li><a href="https://github.com/coleifer/peewee">peewee</a> - A small,
|
||
expressive ORM.</li>
|
||
<li><a href="https://github.com/ponyorm/pony/">pony</a> - ORM that
|
||
provides a generator-oriented interface to SQL.</li>
|
||
<li><a href="https://github.com/web2py/pydal/">pydal</a> - A pure Python
|
||
Database Abstraction Layer.</li>
|
||
</ul></li>
|
||
<li>NoSQL Databases
|
||
<ul>
|
||
<li><a href="https://github.com/stephenmcd/hot-redis">hot-redis</a> -
|
||
Rich Python data types for Redis.</li>
|
||
<li><a href="https://github.com/MongoEngine/mongoengine">mongoengine</a>
|
||
- A Python Object-Document-Mapper for working with MongoDB.</li>
|
||
<li><a href="https://github.com/pynamodb/PynamoDB">PynamoDB</a> - A
|
||
Pythonic interface for <a href="https://aws.amazon.com/dynamodb/">Amazon
|
||
DynamoDB</a>.</li>
|
||
<li><a href="https://github.com/kiddouk/redisco">redisco</a> - A Python
|
||
Library for Simple Models and Containers Persisted in Redis.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="package-management">Package Management</h2>
|
||
<p><em>Libraries for package and dependency management.</em></p>
|
||
<ul>
|
||
<li><a href="https://pip.pypa.io/en/stable/">pip</a> - The package
|
||
installer for Python.
|
||
<ul>
|
||
<li><a href="https://github.com/jazzband/pip-tools">pip-tools</a> - A
|
||
set of tools to keep your pinned Python dependencies fresh.</li>
|
||
<li><a href="https://pypi.org/">PyPI</a></li>
|
||
</ul></li>
|
||
<li><a href="https://github.com/conda/conda/">conda</a> -
|
||
Cross-platform, Python-agnostic binary package manager.</li>
|
||
<li><a href="https://github.com/sdispater/poetry">poetry</a> - Python
|
||
dependency management and packaging made easy.</li>
|
||
</ul>
|
||
<h2 id="package-repositories">Package Repositories</h2>
|
||
<p><em>Local PyPI repository server and proxies.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/pypa/bandersnatch/">bandersnatch</a> -
|
||
PyPI mirroring tool provided by Python Packaging Authority (PyPA).</li>
|
||
<li><a href="https://github.com/devpi/devpi">devpi</a> - PyPI server and
|
||
packaging/testing/release tool.</li>
|
||
<li><a href="https://github.com/jazzband/localshop">localshop</a> -
|
||
Local PyPI server (custom packages and auto-mirroring of pypi).</li>
|
||
<li><a href="https://github.com/pypa/warehouse">warehouse</a> - Next
|
||
generation Python Package Repository (PyPI).</li>
|
||
</ul>
|
||
<h2 id="penetration-testing">Penetration Testing</h2>
|
||
<p><em>Frameworks and tools for penetration testing.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/Manisso/fsociety">fsociety</a> - A
|
||
Penetration testing framework.</li>
|
||
<li><a
|
||
href="https://github.com/trustedsec/social-engineer-toolkit">setoolkit</a>
|
||
- A toolkit for social engineering.</li>
|
||
<li><a href="https://github.com/sqlmapproject/sqlmap">sqlmap</a> -
|
||
Automatic SQL injection and database takeover tool.</li>
|
||
</ul>
|
||
<h2 id="permissions">Permissions</h2>
|
||
<p><em>Libraries that allow or deny users access to data or
|
||
functionality.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-guardian/django-guardian">django-guardian</a>
|
||
- Implementation of per object permissions for Django 1.2+</li>
|
||
<li><a href="https://github.com/dfunckt/django-rules">django-rules</a> -
|
||
A tiny but powerful app providing object-level permissions to Django,
|
||
without requiring a database.</li>
|
||
</ul>
|
||
<h2 id="processes">Processes</h2>
|
||
<p><em>Libraries for starting and communicating with OS
|
||
processes.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/amitt001/delegator.py">delegator.py</a>
|
||
- <a
|
||
href="https://docs.python.org/3/library/subprocess.html">Subprocesses</a>
|
||
for Humans 2.0.</li>
|
||
<li><a href="https://sarge.readthedocs.io/en/latest/">sarge</a> - Yet
|
||
another wrapper for subprocess.</li>
|
||
<li><a href="https://github.com/amoffat/sh">sh</a> - A full-fledged
|
||
subprocess replacement for Python.</li>
|
||
</ul>
|
||
<h2 id="recommender-systems">Recommender Systems</h2>
|
||
<p><em>Libraries for building recommender systems.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/spotify/annoy">annoy</a> - Approximate
|
||
Nearest Neighbors in C++/Python optimized for memory usage.</li>
|
||
<li><a href="https://github.com/ibayer/fastFM">fastFM</a> - A library
|
||
for Factorization Machines.</li>
|
||
<li><a href="https://github.com/benfred/implicit">implicit</a> - A fast
|
||
Python implementation of collaborative filtering for implicit
|
||
datasets.</li>
|
||
<li><a href="https://github.com/guestwalk/libffm">libffm</a> - A library
|
||
for Field-aware Factorization Machine (FFM).</li>
|
||
<li><a href="https://github.com/lyst/lightfm">lightfm</a> - A Python
|
||
implementation of a number of popular recommendation algorithms.</li>
|
||
<li><a href="https://github.com/maciejkula/spotlight">spotlight</a> -
|
||
Deep recommender models using PyTorch.</li>
|
||
<li><a href="https://github.com/NicolasHug/Surprise">Surprise</a> - A
|
||
scikit for building and analyzing recommender systems.</li>
|
||
<li><a href="https://github.com/jfkirk/tensorrec">tensorrec</a> - A
|
||
Recommendation Engine Framework in TensorFlow.</li>
|
||
</ul>
|
||
<h2 id="refactoring">Refactoring</h2>
|
||
<p><em>Refactoring tools and libraries for Python</em></p>
|
||
<ul>
|
||
<li><a href="http://bicyclerepair.sourceforge.net/">Bicycle Repair
|
||
Man</a> - Bicycle Repair Man, a refactoring tool for Python.</li>
|
||
<li><a href="https://pybowler.io/">Bowler</a> - Safe code refactoring
|
||
for modern Python.</li>
|
||
<li><a href="https://github.com/python-rope/rope">Rope</a> - Rope is a
|
||
python refactoring library.</li>
|
||
</ul>
|
||
<h2 id="restful-api">RESTful API</h2>
|
||
<p><em>Libraries for building RESTful APIs.</em></p>
|
||
<ul>
|
||
<li>Django
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/encode/django-rest-framework">django-rest-framework</a>
|
||
- A powerful and flexible toolkit to build web APIs.</li>
|
||
<li><a
|
||
href="https://github.com/django-tastypie/django-tastypie">django-tastypie</a>
|
||
- Creating delicious APIs for Django apps.</li>
|
||
</ul></li>
|
||
<li>Flask
|
||
<ul>
|
||
<li><a href="https://github.com/pyeve/eve">eve</a> - REST API framework
|
||
powered by Flask, MongoDB and good intentions.</li>
|
||
<li><a href="https://github.com/flask-api/flask-api">flask-api</a> -
|
||
Browsable Web APIs for Flask.</li>
|
||
<li><a
|
||
href="https://github.com/flask-restful/flask-restful">flask-restful</a>
|
||
- Quickly building REST APIs for Flask.</li>
|
||
</ul></li>
|
||
<li>Pyramid
|
||
<ul>
|
||
<li><a href="https://github.com/Cornices/cornice">cornice</a> - A
|
||
RESTful framework for Pyramid.</li>
|
||
</ul></li>
|
||
<li>Framework agnostic
|
||
<ul>
|
||
<li><a href="https://github.com/falconry/falcon">falcon</a> - A
|
||
high-performance framework for building cloud APIs and web app
|
||
backends.</li>
|
||
<li><a href="https://github.com/tiangolo/fastapi">fastapi</a> - A
|
||
modern, fast, web framework for building APIs with Python 3.6+ based on
|
||
standard Python type hints.</li>
|
||
<li><a href="https://github.com/hugapi/hug">hug</a> - A Python 3
|
||
framework for cleanly exposing APIs.</li>
|
||
<li><a href="https://github.com/jeffknupp/sandman2">sandman2</a> -
|
||
Automated REST APIs for existing database-driven systems.</li>
|
||
<li><a href="https://github.com/sanic-org/sanic">sanic</a> - A Python
|
||
3.6+ web server and web framework that’s written to go fast.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="robotics">Robotics</h2>
|
||
<p><em>Libraries for robotics.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/AtsushiSakai/PythonRobotics">PythonRobotics</a>
|
||
- This is a compilation of various robotics algorithms with
|
||
visualizations.</li>
|
||
<li><a href="http://wiki.ros.org/rospy">rospy</a> - This is a library
|
||
for ROS (Robot Operating System).</li>
|
||
</ul>
|
||
<h2 id="rpc-servers">RPC Servers</h2>
|
||
<p><em>RPC-compatible servers.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/tomerfiliba/rpyc">RPyC</a> (Remote
|
||
Python Call) - A transparent and symmetric RPC library for Python</li>
|
||
<li><a href="https://github.com/0rpc/zerorpc-python">zeroRPC</a> -
|
||
zerorpc is a flexible RPC implementation based on <a
|
||
href="http://zeromq.org/">ZeroMQ</a> and <a
|
||
href="http://msgpack.org/">MessagePack</a>.</li>
|
||
</ul>
|
||
<h2 id="science">Science</h2>
|
||
<p><em>Libraries for scientific computing. Also see <a
|
||
href="https://github.com/TomNicholas/Python-for-Scientists">Python-for-Scientists</a>.</em></p>
|
||
<ul>
|
||
<li><a href="http://www.astropy.org/">astropy</a> - A community Python
|
||
library for Astronomy.</li>
|
||
<li><a
|
||
href="https://github.com/chapmanb/bcbio-nextgen">bcbio-nextgen</a> -
|
||
Providing best-practice pipelines for fully automated high throughput
|
||
sequencing analysis.</li>
|
||
<li><a href="https://github.com/chapmanb/bcbb">bccb</a> - Collection of
|
||
useful code related to biological analysis.</li>
|
||
<li><a href="http://biopython.org/wiki/Main_Page">Biopython</a> -
|
||
Biopython is a set of freely available tools for biological
|
||
computation.</li>
|
||
<li><a href="http://cclib.github.io/">cclib</a> - A library for parsing
|
||
and interpreting the results of computational chemistry packages.</li>
|
||
<li><a href="http://colour-science.org/">Colour</a> - Implementing a
|
||
comprehensive number of colour theory transformations and
|
||
algorithms.</li>
|
||
<li><a href="https://github.com/benedekrozemberczki/karateclub">Karate
|
||
Club</a> - Unsupervised machine learning toolbox for graph structured
|
||
data.</li>
|
||
<li><a href="https://networkx.github.io/">NetworkX</a> - A
|
||
high-productivity software for complex networks.</li>
|
||
<li><a href="http://nipy.org">NIPY</a> - A collection of neuroimaging
|
||
toolkits.</li>
|
||
<li><a href="http://www.numpy.org/">NumPy</a> - A fundamental package
|
||
for scientific computing with Python.</li>
|
||
<li><a href="https://github.com/obspy/obspy/wiki/">ObsPy</a> - A Python
|
||
toolbox for seismology.</li>
|
||
<li><a href="https://open-babel.readthedocs.io/">Open Babel</a> - A
|
||
chemical toolbox designed to speak the many languages of chemical
|
||
data.</li>
|
||
<li><a href="http://www.pydy.org/">PyDy</a> - Short for Python Dynamics,
|
||
used to assist with workflow in the modeling of dynamic motion.</li>
|
||
<li><a href="https://github.com/pymc-devs/pymc3">PyMC</a> - Markov Chain
|
||
Monte Carlo sampling toolkit.</li>
|
||
<li><a href="http://qutip.org/">QuTiP</a> - Quantum Toolbox in
|
||
Python.</li>
|
||
<li><a href="http://www.rdkit.org/">RDKit</a> - Cheminformatics and
|
||
Machine Learning Software.</li>
|
||
<li><a href="https://www.scipy.org/">SciPy</a> - A Python-based
|
||
ecosystem of open-source software for mathematics, science, and
|
||
engineering.</li>
|
||
<li><a href="https://gitlab.com/team-simpy/simpy">SimPy</a> - A
|
||
process-based discrete-event simulation framework.</li>
|
||
<li><a href="https://github.com/statsmodels/statsmodels">statsmodels</a>
|
||
- Statistical modeling and econometrics in Python.</li>
|
||
<li><a href="https://github.com/sympy/sympy">SymPy</a> - A Python
|
||
library for symbolic mathematics.</li>
|
||
<li><a href="https://github.com/quantopian/zipline">Zipline</a> - A
|
||
Pythonic algorithmic trading library.</li>
|
||
</ul>
|
||
<h2 id="search">Search</h2>
|
||
<p><em>Libraries and software for indexing and performing search queries
|
||
on data.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-haystack/django-haystack">django-haystack</a>
|
||
- Modular search for Django.</li>
|
||
<li><a
|
||
href="https://github.com/elastic/elasticsearch-dsl-py">elasticsearch-dsl-py</a>
|
||
- The official high-level Python client for Elasticsearch.</li>
|
||
<li><a
|
||
href="https://www.elastic.co/guide/en/elasticsearch/client/python-api/current/index.html">elasticsearch-py</a>
|
||
- The official low-level Python client for <a
|
||
href="https://www.elastic.co/products/elasticsearch">Elasticsearch</a>.</li>
|
||
<li><a href="https://github.com/django-haystack/pysolr">pysolr</a> - A
|
||
lightweight Python wrapper for <a
|
||
href="https://lucene.apache.org/solr/">Apache Solr</a>.</li>
|
||
<li><a href="http://whoosh.readthedocs.io/en/latest/">whoosh</a> - A
|
||
fast, pure Python search engine library.</li>
|
||
</ul>
|
||
<h2 id="serialization">Serialization</h2>
|
||
<p><em>Libraries for serializing complex data types</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/marshmallow-code/marshmallow">marshmallow</a> -
|
||
A lightweight library for converting complex objects to and from simple
|
||
Python datatypes.</li>
|
||
<li><a href="https://github.com/TkTech/pysimdjson">pysimdjson</a> - A
|
||
Python bindings for <a
|
||
href="https://github.com/lemire/simdjson">simdjson</a>.</li>
|
||
<li><a
|
||
href="https://github.com/python-rapidjson/python-rapidjson">python-rapidjson</a>
|
||
- A Python wrapper around <a
|
||
href="https://github.com/Tencent/rapidjson">RapidJSON</a>.</li>
|
||
<li><a href="https://github.com/esnme/ultrajson">ultrajson</a> - A fast
|
||
JSON decoder and encoder written in C with Python bindings.</li>
|
||
</ul>
|
||
<h2 id="serverless-frameworks">Serverless Frameworks</h2>
|
||
<p><em>Frameworks for developing serverless Python code.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/nficano/python-lambda">python-lambda</a>
|
||
- A toolkit for developing and deploying Python code in AWS Lambda.</li>
|
||
<li><a href="https://github.com/zappa/Zappa">Zappa</a> - A tool for
|
||
deploying WSGI applications on AWS Lambda and API Gateway.</li>
|
||
</ul>
|
||
<h2 id="shell">Shell</h2>
|
||
<p><em>Shells based on Python.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/xonsh/xonsh/">xonsh</a> - A
|
||
Python-powered, cross-platform, Unix-gazing shell language and command
|
||
prompt.</li>
|
||
</ul>
|
||
<h2 id="specific-formats-processing">Specific Formats Processing</h2>
|
||
<p><em>Libraries for parsing and manipulating specific text
|
||
formats.</em></p>
|
||
<ul>
|
||
<li>General
|
||
<ul>
|
||
<li><a href="https://github.com/jazzband/tablib">tablib</a> - A module
|
||
for Tabular Datasets in XLS, CSV, JSON, YAML.</li>
|
||
</ul></li>
|
||
<li>Office
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/elapouya/python-docx-template">docxtpl</a> -
|
||
Editing a docx document by jinja2 template</li>
|
||
<li><a href="https://openpyxl.readthedocs.io/en/stable/">openpyxl</a> -
|
||
A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm
|
||
files.</li>
|
||
<li><a href="https://github.com/pyexcel/pyexcel">pyexcel</a> - Providing
|
||
one API for reading, manipulating and writing csv, ods, xls, xlsx and
|
||
xlsm files.</li>
|
||
<li><a
|
||
href="https://github.com/python-openxml/python-docx">python-docx</a> -
|
||
Reads, queries and modifies Microsoft Word 2007/2008 docx files.</li>
|
||
<li><a href="https://github.com/scanny/python-pptx">python-pptx</a> -
|
||
Python library for creating and updating PowerPoint (.pptx) files.</li>
|
||
<li><a href="https://github.com/unoconv/unoconv">unoconv</a> - Convert
|
||
between any document format supported by LibreOffice/OpenOffice.</li>
|
||
<li><a href="https://github.com/jmcnamara/XlsxWriter">XlsxWriter</a> - A
|
||
Python module for creating Excel .xlsx files.</li>
|
||
<li><a href="https://github.com/ZoomerAnalytics/xlwings">xlwings</a> - A
|
||
BSD-licensed library that makes it easy to call Python from Excel and
|
||
vice versa.</li>
|
||
<li><a href="https://github.com/python-excel/xlwt">xlwt</a> / <a
|
||
href="https://github.com/python-excel/xlrd">xlrd</a> - Writing and
|
||
reading data and formatting information from Excel files.</li>
|
||
</ul></li>
|
||
<li>PDF
|
||
<ul>
|
||
<li><a href="https://github.com/euske/pdfminer">PDFMiner</a> - A tool
|
||
for extracting information from PDF documents.</li>
|
||
<li><a href="https://github.com/mstamy2/PyPDF2">PyPDF2</a> - A library
|
||
capable of splitting, merging and transforming PDF pages.</li>
|
||
<li><a href="https://www.reportlab.com/opensource/">ReportLab</a> -
|
||
Allowing Rapid creation of rich PDF documents.</li>
|
||
</ul></li>
|
||
<li>Markdown
|
||
<ul>
|
||
<li><a href="https://github.com/lepture/mistune">Mistune</a> - Fastest
|
||
and full featured pure Python parsers of Markdown.</li>
|
||
<li><a
|
||
href="https://github.com/waylan/Python-Markdown">Python-Markdown</a> - A
|
||
Python implementation of John Gruber’s Markdown.</li>
|
||
</ul></li>
|
||
<li>YAML
|
||
<ul>
|
||
<li><a href="http://pyyaml.org/">PyYAML</a> - YAML implementations for
|
||
Python.</li>
|
||
</ul></li>
|
||
<li>CSV
|
||
<ul>
|
||
<li><a href="https://github.com/wireservice/csvkit">csvkit</a> -
|
||
Utilities for converting to and working with CSV.</li>
|
||
</ul></li>
|
||
<li>Archive
|
||
<ul>
|
||
<li><a href="https://github.com/mitsuhiko/unp">unp</a> - A command line
|
||
tool that can unpack archives easily.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="static-site-generator">Static Site Generator</h2>
|
||
<p><em>Static site generator is a software that takes some text +
|
||
templates as input and produces HTML files on the output.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/lektor/lektor">lektor</a> - An easy to
|
||
use static CMS and blog engine.</li>
|
||
<li><a href="https://github.com/mkdocs/mkdocs/">mkdocs</a> - Markdown
|
||
friendly documentation generator.</li>
|
||
<li><a href="https://github.com/sunainapai/makesite">makesite</a> -
|
||
Simple, lightweight, and magic-free static site/blog generator (< 130
|
||
lines).</li>
|
||
<li><a href="https://github.com/getnikola/nikola">nikola</a> - A static
|
||
website and blog generator.</li>
|
||
<li><a href="https://github.com/getpelican/pelican">pelican</a> - Static
|
||
site generator that supports Markdown and reST syntax.</li>
|
||
</ul>
|
||
<h2 id="tagging">Tagging</h2>
|
||
<p><em>Libraries for tagging items.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-taggit">django-taggit</a> -
|
||
Simple tagging for Django.</li>
|
||
</ul>
|
||
<h2 id="task-queues">Task Queues</h2>
|
||
<p><em>Libraries for working with task queues.</em></p>
|
||
<ul>
|
||
<li><a href="https://docs.celeryproject.org/en/stable/">celery</a> - An
|
||
asynchronous task queue/job queue based on distributed message
|
||
passing.</li>
|
||
<li><a href="https://github.com/Bogdanp/dramatiq">dramatiq</a> - A fast
|
||
and reliable background task processing library for Python 3.</li>
|
||
<li><a href="https://github.com/coleifer/huey">huey</a> - Little
|
||
multi-threaded task queue.</li>
|
||
<li><a href="https://github.com/pricingassistant/mrq">mrq</a> - A
|
||
distributed worker task queue in Python using Redis & gevent.</li>
|
||
<li><a href="https://github.com/rq/rq">rq</a> - Simple job queues for
|
||
Python.</li>
|
||
</ul>
|
||
<h2 id="template-engine">Template Engine</h2>
|
||
<p><em>Libraries and tools for templating and lexing.</em></p>
|
||
<ul>
|
||
<li><a href="https://genshi.edgewall.org/">Genshi</a> - Python
|
||
templating toolkit for generation of web-aware output.</li>
|
||
<li><a href="https://github.com/pallets/jinja">Jinja2</a> - A modern and
|
||
designer friendly templating language.</li>
|
||
<li><a href="http://www.makotemplates.org/">Mako</a> - Hyperfast and
|
||
lightweight templating for the Python platform.</li>
|
||
</ul>
|
||
<h2 id="testing">Testing</h2>
|
||
<p><em>Libraries for testing codebases and generating test
|
||
data.</em></p>
|
||
<ul>
|
||
<li>Testing Frameworks
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/HypothesisWorks/hypothesis">hypothesis</a> -
|
||
Hypothesis is an advanced Quickcheck style property based testing
|
||
library.</li>
|
||
<li><a href="https://github.com/nose-devs/nose2">nose2</a> - The
|
||
successor to <code>nose</code>, based on `unittest2.</li>
|
||
<li><a href="https://docs.pytest.org/en/latest/">pytest</a> - A mature
|
||
full-featured Python testing tool.</li>
|
||
<li><a href="https://github.com/robotframework/robotframework">Robot
|
||
Framework</a> - A generic test automation framework.</li>
|
||
<li><a
|
||
href="https://docs.python.org/3/library/unittest.html">unittest</a> -
|
||
(Python standard library) Unit testing framework.</li>
|
||
</ul></li>
|
||
<li>Test Runners
|
||
<ul>
|
||
<li><a href="https://github.com/CleanCut/green">green</a> - A clean,
|
||
colorful test runner.</li>
|
||
<li><a href="http://nestorsalceda.github.io/mamba/">mamba</a> - The
|
||
definitive testing tool for Python. Born under the banner of BDD.</li>
|
||
<li><a href="https://tox.readthedocs.io/en/latest/">tox</a> - Auto
|
||
builds and tests distributions in multiple Python versions</li>
|
||
</ul></li>
|
||
<li>GUI / Web Testing
|
||
<ul>
|
||
<li><a href="https://github.com/locustio/locust">locust</a> - Scalable
|
||
user load testing tool written in Python.</li>
|
||
<li><a href="https://github.com/asweigart/pyautogui">PyAutoGUI</a> -
|
||
PyAutoGUI is a cross-platform GUI automation Python module for human
|
||
beings.</li>
|
||
<li><a href="https://github.com/kiwicom/schemathesis">Schemathesis</a> -
|
||
A tool for automatic property-based testing of web applications built
|
||
with Open API / Swagger specifications.</li>
|
||
<li><a href="https://pypi.org/project/selenium/">Selenium</a> - Python
|
||
bindings for <a href="http://www.seleniumhq.org/">Selenium</a>
|
||
WebDriver.</li>
|
||
<li><a href="https://github.com/seatgeek/sixpack">sixpack</a> - A
|
||
language-agnostic A/B Testing framework.</li>
|
||
<li><a href="https://github.com/cobrateam/splinter">splinter</a> - Open
|
||
source tool for testing web applications.</li>
|
||
</ul></li>
|
||
<li>Mock
|
||
<ul>
|
||
<li><a href="https://pypi.org/project/doublex/">doublex</a> - Powerful
|
||
test doubles framework for Python.</li>
|
||
<li><a href="https://github.com/spulec/freezegun">freezegun</a> - Travel
|
||
through time by mocking the datetime module.</li>
|
||
<li><a href="https://github.com/patrys/httmock">httmock</a> - A mocking
|
||
library for requests for Python 2.6+ and 3.2+.</li>
|
||
<li><a href="https://github.com/gabrielfalcao/HTTPretty">httpretty</a> -
|
||
HTTP request mock tool for Python.</li>
|
||
<li><a
|
||
href="https://docs.python.org/3/library/unittest.mock.html">mock</a> -
|
||
(Python standard library) A mocking and patching library.</li>
|
||
<li><a href="https://github.com/mindflayer/python-mocket">mocket</a> - A
|
||
socket mock framework with gevent/asyncio/SSL support.</li>
|
||
<li><a href="https://github.com/getsentry/responses">responses</a> - A
|
||
utility library for mocking out the requests Python library.</li>
|
||
<li><a href="https://github.com/kevin1024/vcrpy">VCR.py</a> - Record and
|
||
replay HTTP interactions on your tests.</li>
|
||
</ul></li>
|
||
<li>Object Factories
|
||
<ul>
|
||
<li><a href="https://github.com/FactoryBoy/factory_boy">factory_boy</a>
|
||
- A test fixtures replacement for Python.</li>
|
||
<li><a href="https://github.com/klen/mixer">mixer</a> - Another fixtures
|
||
replacement. Supports Django, Flask, SQLAlchemy, Peewee and etc.</li>
|
||
<li><a
|
||
href="https://github.com/vandersonmota/model_mommy">model_mommy</a> -
|
||
Creating random fixtures for testing in Django.</li>
|
||
</ul></li>
|
||
<li>Code Coverage
|
||
<ul>
|
||
<li><a href="https://pypi.org/project/coverage/">coverage</a> - Code
|
||
coverage measurement.</li>
|
||
</ul></li>
|
||
<li>Fake Data
|
||
<ul>
|
||
<li><a href="https://github.com/emirozer/fake2db">fake2db</a> - Fake
|
||
database generator.</li>
|
||
<li><a href="https://github.com/joke2k/faker">faker</a> - A Python
|
||
package that generates fake data.</li>
|
||
<li><a href="https://github.com/lk-geimfari/mimesis">mimesis</a> - is a
|
||
Python library that help you generate fake data.</li>
|
||
<li><a href="https://pypi.org/project/radar/">radar</a> - Generate
|
||
random datetime / time.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="text-processing">Text Processing</h2>
|
||
<p><em>Libraries for parsing and manipulating plain texts.</em></p>
|
||
<ul>
|
||
<li>General
|
||
<ul>
|
||
<li><a href="https://github.com/chardet/chardet">chardet</a> - Python
|
||
2/3 compatible character encoding detector.</li>
|
||
<li><a href="https://docs.python.org/3/library/difflib.html">difflib</a>
|
||
- (Python standard library) Helpers for computing deltas.</li>
|
||
<li><a href="https://github.com/LuminosoInsight/python-ftfy">ftfy</a> -
|
||
Makes Unicode text less broken and more consistent automagically.</li>
|
||
<li><a href="https://github.com/seatgeek/fuzzywuzzy">fuzzywuzzy</a> -
|
||
Fuzzy String Matching.</li>
|
||
<li><a
|
||
href="https://github.com/ztane/python-Levenshtein/">Levenshtein</a> -
|
||
Fast computation of Levenshtein distance and string similarity.</li>
|
||
<li><a href="https://github.com/vinta/pangu.py">pangu.py</a> - Paranoid
|
||
text spacing.</li>
|
||
<li><a href="https://github.com/pwaller/pyfiglet">pyfiglet</a> - An
|
||
implementation of figlet written in Python.</li>
|
||
<li><a href="https://github.com/mozillazg/python-pinyin">pypinyin</a> -
|
||
Convert Chinese hanzi (漢字) to pinyin (拼音).</li>
|
||
<li><a href="https://github.com/orsinium/textdistance">textdistance</a>
|
||
- Compute distance between sequences with 30+ algorithms.</li>
|
||
<li><a href="https://pypi.org/project/Unidecode/">unidecode</a> - ASCII
|
||
transliterations of Unicode text.</li>
|
||
</ul></li>
|
||
<li>Slugify
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/dimka665/awesome-slugify">awesome-slugify</a> -
|
||
A Python slugify library that can preserve unicode.</li>
|
||
<li><a href="https://github.com/un33k/python-slugify">python-slugify</a>
|
||
- A Python slugify library that translates unicode to ASCII.</li>
|
||
<li><a
|
||
href="https://github.com/mozilla/unicode-slugify">unicode-slugify</a> -
|
||
A slugifier that generates unicode slugs with Django as a
|
||
dependency.</li>
|
||
</ul></li>
|
||
<li>Unique identifiers
|
||
<ul>
|
||
<li><a href="https://github.com/davidaurelio/hashids-python">hashids</a>
|
||
- Implementation of <a href="http://hashids.org">hashids</a> in
|
||
Python.</li>
|
||
<li><a href="https://github.com/skorokithakis/shortuuid">shortuuid</a> -
|
||
A generator library for concise, unambiguous and URL-safe UUIDs.</li>
|
||
</ul></li>
|
||
<li>Parser
|
||
<ul>
|
||
<li><a href="https://github.com/dabeaz/ply">ply</a> - Implementation of
|
||
lex and yacc parsing tools for Python.</li>
|
||
<li><a href="http://pygments.org/">pygments</a> - A generic syntax
|
||
highlighter.</li>
|
||
<li><a href="https://github.com/pyparsing/pyparsing">pyparsing</a> - A
|
||
general purpose framework for generating parsers.</li>
|
||
<li><a
|
||
href="https://github.com/derek73/python-nameparser">python-nameparser</a>
|
||
- Parsing human names into their individual components.</li>
|
||
<li><a
|
||
href="https://github.com/daviddrysdale/python-phonenumbers">python-phonenumbers</a>
|
||
- Parsing, formatting, storing and validating international phone
|
||
numbers.</li>
|
||
<li><a
|
||
href="https://github.com/selwin/python-user-agents">python-user-agents</a>
|
||
- Browser user agent parser.</li>
|
||
<li><a href="https://github.com/andialbrecht/sqlparse">sqlparse</a> - A
|
||
non-validating SQL parser.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="third-party-apis">Third-party APIs</h2>
|
||
<p><em>Libraries for accessing third party services APIs. Also see <a
|
||
href="https://github.com/realpython/list-of-python-api-wrappers">List of
|
||
Python API Wrappers and Libraries</a>.</em></p>
|
||
<ul>
|
||
<li><a href="https://libcloud.apache.org/">apache-libcloud</a> - One
|
||
Python library for all clouds.</li>
|
||
<li><a href="https://github.com/boto/boto3">boto3</a> - Python interface
|
||
to Amazon Web Services.</li>
|
||
<li><a
|
||
href="https://github.com/istrategylabs/django-wordpress">django-wordpress</a>
|
||
- WordPress models and views for Django.</li>
|
||
<li><a href="https://github.com/mobolic/facebook-sdk">facebook-sdk</a> -
|
||
Facebook Platform Python SDK.</li>
|
||
<li><a
|
||
href="https://github.com/google/google-api-python-client">google-api-python-client</a>
|
||
- Google APIs Client Library for Python.</li>
|
||
<li><a href="https://github.com/burnash/gspread">gspread</a> - Google
|
||
Spreadsheets Python API.</li>
|
||
<li><a href="https://github.com/ryanmcgrath/twython">twython</a> - A
|
||
Python wrapper for the Twitter API.</li>
|
||
</ul>
|
||
<h2 id="url-manipulation">URL Manipulation</h2>
|
||
<p><em>Libraries for parsing URLs.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/gruns/furl">furl</a> - A small Python
|
||
library that makes parsing and manipulating URLs easy.</li>
|
||
<li><a href="https://github.com/codeinthehole/purl">purl</a> - A simple,
|
||
immutable URL class with a clean API for interrogation and
|
||
manipulation.</li>
|
||
<li><a
|
||
href="https://github.com/ellisonleao/pyshorteners">pyshorteners</a> - A
|
||
pure Python URL shortening lib.</li>
|
||
<li><a href="https://github.com/marshmallow-code/webargs">webargs</a> -
|
||
A friendly library for parsing HTTP request arguments with built-in
|
||
support for popular web frameworks.</li>
|
||
</ul>
|
||
<h2 id="video">Video</h2>
|
||
<p><em>Libraries for manipulating video and GIFs.</em></p>
|
||
<ul>
|
||
<li><a href="https://zulko.github.io/moviepy/">moviepy</a> - A module
|
||
for script-based movie editing with many formats, including animated
|
||
GIFs.</li>
|
||
<li><a href="https://github.com/aizvorski/scikit-video">scikit-video</a>
|
||
- Video processing routines for SciPy.</li>
|
||
<li><a href="https://github.com/abhiTronix/vidgear">vidgear</a> - Most
|
||
Powerful multi-threaded Video Processing framework.</li>
|
||
</ul>
|
||
<h2 id="web-asset-management">Web Asset Management</h2>
|
||
<p><em>Tools for managing, compressing and minifying website
|
||
assets.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-compressor/django-compressor">django-compressor</a>
|
||
- Compresses linked and inline JavaScript or CSS into a single cached
|
||
file.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-pipeline">django-pipeline</a> -
|
||
An asset packaging library for Django.</li>
|
||
<li><a
|
||
href="https://github.com/jschneier/django-storages">django-storages</a>
|
||
- A collection of custom storage back ends for Django.</li>
|
||
<li><a href="http://www.fanstatic.org/en/latest/">fanstatic</a> -
|
||
Packages, optimizes, and serves static file dependencies as Python
|
||
packages.</li>
|
||
<li><a href="http://wimleers.com/fileconveyor">fileconveyor</a> - A
|
||
daemon to detect and sync files to CDNs, S3 and FTP.</li>
|
||
<li><a href="https://github.com/miracle2k/flask-assets">flask-assets</a>
|
||
- Helps you integrate webassets into your Flask app.</li>
|
||
<li><a href="https://github.com/miracle2k/webassets">webassets</a> -
|
||
Bundles, optimizes, and manages unique cache-busting URLs for static
|
||
resources.</li>
|
||
</ul>
|
||
<h2 id="web-content-extracting">Web Content Extracting</h2>
|
||
<p><em>Libraries for extracting web contents.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/Alir3z4/html2text">html2text</a> -
|
||
Convert HTML to Markdown-formatted text.</li>
|
||
<li><a href="https://github.com/michaelhelmick/lassie">lassie</a> - Web
|
||
Content Retrieval for Humans.</li>
|
||
<li><a href="https://github.com/coleifer/micawber">micawber</a> - A
|
||
small library for extracting rich content from URLs.</li>
|
||
<li><a href="https://github.com/codelucas/newspaper">newspaper</a> -
|
||
News extraction, article extraction and content curation in Python.</li>
|
||
<li><a
|
||
href="https://github.com/buriy/python-readability">python-readability</a>
|
||
- Fast Python port of arc90’s readability tool.</li>
|
||
<li><a href="https://github.com/psf/requests-html">requests-html</a> -
|
||
Pythonic HTML Parsing for Humans.</li>
|
||
<li><a href="https://github.com/miso-belica/sumy">sumy</a> - A module
|
||
for automatic summarization of text documents and HTML pages.</li>
|
||
<li><a href="https://github.com/deanmalmgren/textract">textract</a> -
|
||
Extract text from any document, Word, PowerPoint, PDFs, etc.</li>
|
||
<li><a href="https://github.com/gaojiuli/toapi">toapi</a> - Every web
|
||
site provides APIs.</li>
|
||
</ul>
|
||
<h2 id="web-crawling">Web Crawling</h2>
|
||
<p><em>Libraries to automate web scraping.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/kurtmckee/feedparser">feedparser</a> -
|
||
Universal feed parser.</li>
|
||
<li><a href="https://github.com/lorien/grab">grab</a> - Site scraping
|
||
framework.</li>
|
||
<li><a
|
||
href="https://github.com/MechanicalSoup/MechanicalSoup">mechanicalsoup</a>
|
||
- A Python library for automating interaction with websites.</li>
|
||
<li><a href="https://github.com/scrapy/scrapy">scrapy</a> - A fast
|
||
high-level screen scraping and web crawling framework.</li>
|
||
</ul>
|
||
<h2 id="web-frameworks">Web Frameworks</h2>
|
||
<p><em>Traditional full stack web frameworks. Also see <a
|
||
href="https://github.com/vinta/awesome-python#restful-api">RESTful
|
||
API</a>.</em></p>
|
||
<ul>
|
||
<li>Synchronous
|
||
<ul>
|
||
<li><a href="https://github.com/django/django">django</a> - The most
|
||
popular web framework in Python.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/shahraizali/awesome-django">awesome-django</a></li>
|
||
<li><a
|
||
href="https://github.com/wsvincent/awesome-django">awesome-django</a></li>
|
||
</ul></li>
|
||
<li><a href="https://github.com/pallets/flask">flask</a> - A
|
||
microframework for Python.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/humiaozuzu/awesome-flask">awesome-flask</a></li>
|
||
</ul></li>
|
||
<li><a href="https://pylonsproject.org/">pyramid</a> - A small, fast,
|
||
down-to-earth, open source Python web framework.
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/uralbash/awesome-pyramid">awesome-pyramid</a></li>
|
||
</ul></li>
|
||
<li><a href="https://github.com/MasoniteFramework/masonite">masonite</a>
|
||
- The modern and developer centric Python web framework.</li>
|
||
</ul></li>
|
||
<li>Asynchronous
|
||
<ul>
|
||
<li><a href="https://github.com/tornadoweb/tornado">tornado</a> - A web
|
||
framework and asynchronous networking library.</li>
|
||
</ul></li>
|
||
</ul>
|
||
<h2 id="websocket">WebSocket</h2>
|
||
<p><em>Libraries for working with WebSocket.</em></p>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/crossbario/autobahn-python">autobahn-python</a>
|
||
- WebSocket & WAMP for Python on Twisted and <a
|
||
href="https://docs.python.org/3/library/asyncio.html">asyncio</a>.</li>
|
||
<li><a href="https://github.com/django/channels">channels</a> -
|
||
Developer-friendly asynchrony for Django.</li>
|
||
<li><a href="https://github.com/aaugustin/websockets">websockets</a> - A
|
||
library for building WebSocket servers and clients with a focus on
|
||
correctness and simplicity.</li>
|
||
</ul>
|
||
<h2 id="wsgi-servers">WSGI Servers</h2>
|
||
<p><em>WSGI-compatible web servers.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/benoitc/gunicorn">gunicorn</a> -
|
||
Pre-forked, ported from Ruby’s Unicorn project.</li>
|
||
<li><a href="https://uwsgi-docs.readthedocs.io/en/latest/">uwsgi</a> - A
|
||
project aims at developing a full stack for building hosting services,
|
||
written in C.</li>
|
||
<li><a href="https://github.com/Pylons/waitress">waitress</a> -
|
||
Multi-threaded, powers Pyramid.</li>
|
||
<li><a href="https://github.com/pallets/werkzeug">werkzeug</a> - A WSGI
|
||
utility library for Python that powers Flask and can easily be embedded
|
||
into your own projects.</li>
|
||
</ul>
|
||
<h1 id="resources">Resources</h1>
|
||
<p>Where to discover learning resources or new Python libraries.</p>
|
||
<h2 id="newsletters">Newsletters</h2>
|
||
<ul>
|
||
<li><a href="http://python.libhunt.com/newsletter">Awesome Python
|
||
Newsletter</a></li>
|
||
<li><a href="https://pycoders.com/">Pycoder’s Weekly</a></li>
|
||
<li><a href="https://realpython.com/python-tricks/">Python
|
||
Tricks</a></li>
|
||
<li><a href="https://www.pythonweekly.com/">Python Weekly</a></li>
|
||
</ul>
|
||
<h2 id="podcasts">Podcasts</h2>
|
||
<ul>
|
||
<li><a href="https://djangochat.com/">Django Chat</a></li>
|
||
<li><a href="https://pythonbytes.fm">Python Bytes</a></li>
|
||
<li><a href="https://talkpython.fm/">Talk Python To Me</a></li>
|
||
<li><a href="https://podcast.pythontest.com/">Python Test</a></li>
|
||
<li><a href="https://realpython.com/podcasts/rpp/">The Real Python
|
||
Podcast</a></li>
|
||
</ul>
|
||
<h1 id="contributing">Contributing</h1>
|
||
<p>Your contributions are always welcome! Please take a look at the <a
|
||
href="https://github.com/vinta/awesome-python/blob/master/CONTRIBUTING.md">contribution
|
||
guidelines</a> first.</p>
|
||
<hr />
|
||
<p>If you have any question about this opinionated list, do not hesitate
|
||
to contact me <a href="https://twitter.com/VintaChen"><span
|
||
class="citation" data-cites="VintaChen">@VintaChen</span></a> on Twitter
|
||
or open an issue on GitHub.</p>
|