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

awesome-python

一些Python相关的框架、代码、资源、库的集合
https://github.com/wyfish/awesome-python

Last synced: 20 days ago
JSON representation

Admin Panels

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

Algorithms and Design Patterns

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

Audio

  • audioread - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.
  • dejavu - Audio fingerprinting and recognition.
  • mingus - An advanced music theory and notation package with MIDI file and playback support.
  • pyAudioAnalysis - Audio feature extraction, classification, segmentation and applications.
  • pydub - Manipulate audio with a simple and easy high level interface.
  • TimeSide - Open web audio processing framework.
  • beets - A music library manager and MusicBrainz tagger.
  • eyeD3 - A tool for working with audio files, specifically MP3 files containing ID3 metadata.
  • mutagen - A Python module to handle audio metadata.
  • tinytag - A library for reading music meta data of MP3, OGG, FLAC and Wave files.

Authentication

  • authlib - JavaScript Object Signing and Encryption draft implementation.
  • django-allauth - Authentication app for Django that "just works."
  • python-oauth2 - A fully tested, abstract interface to creating OAuth clients and servers.
  • python-social-auth - An easy-to-setup social authentication mechanism.
  • pyjwt - JSON Web Token implementation in Python.
  • python-jwt - A module for generating and verifying JSON Web Tokens.
  • python-jose - A JOSE implementation in Python.
  • django-oauth-toolkit - OAuth 2 goodies for Django.

Build Tools

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

Built-in Classes Enhancement

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

Caching

  • HermesCache - Python caching library with tag-based invalidation and dogpile effect prevention.
  • beaker - A WSGI middleware for sessions and caching.
  • django-cache-machine - Automatic caching and invalidation for Django models.
  • django-cacheops - A slick ORM cache with automatic granular event-driven invalidation.
  • pylibmc - A Python wrapper around the libmemcached interface.
  • HermesCache - Python caching library with tag-based invalidation and dogpile effect prevention.
  • dogpile.cache - dogpile.cache is next generation replacement for Beaker made by same authors.

ChatOps Tools

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

CMS

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

Code Analysis

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

Code Quality

  • Codacy - Automated Code Review to ship better code, faster.
  • CodeFactor - Automated Code Review for Git.
  • Landscape - Hosted continuous Python code metrics.
  • PEP 8 Speaks - GitHub integration to review code style.

Command-line Interface Development

  • docopt - Pythonic command line arguments parser.
  • colorama - Cross-platform colored terminal text.
  • clint - Python Command-line Application Tools.
  • docopt - Pythonic command line arguments parser.
  • python-fire - A library for creating command line interfaces from absolutely any Python object.
  • asciimatics - A package to create full-screen text UIs (from interactive forms to ASCII animations).
  • bashplotlib - Making basic plots in the terminal.
  • tqdm - Fast, extensible progress bar for loops and CLI.
  • cliff - A framework for creating command-line programs with multi-level commands.
  • colorama - Cross-platform colored terminal text.
  • cement - CLI Application Framework for Python.
  • python-prompt-toolkit - A library for building powerful interactive command lines.
  • click - A package for creating beautiful command line interfaces in a composable way.

Command-line Tools

  • doitlive - A tool for live presentations in the terminal.
  • howdoi - Instant coding answers via the command line.
  • PathPicker - Select files out of bash output.
  • percol - Adds flavor of interactive selection to the traditional pipe concept on UNIX.
  • thefuck - Correcting your previous console command.
  • try - A dead simple CLI to try out python packages - it's never been easier.
  • httpie - A command line HTTP client, a user-friendly cURL replacement.
  • kube-shell - An integrated shell for working with the Kubernetes CLI.
  • mycli - A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.
  • pgcli - Postgres CLI with autocompletion and syntax highlighting.
  • saws - A Supercharged aws-cli.
  • tmuxp - A tmux session manager.
  • cookiecutter - A command-line utility that creates projects from cookiecutters (project templates).

Compatibility

  • six - Python 2 and 3 compatibility utilities.
  • python-modernize - Modernizes Python code for eventual Python 3 migration.
  • six - Python 2 and 3 compatibility utilities.

Computer Vision

Concurrency and Parallelism

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

Configuration

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

Continuous Integration

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

Cryptography

  • cryptography - A package designed to expose cryptographic primitives and recipes to Python developers.
  • passlib - Secure password storage/hashing library, very high level.
  • paramiko - The leading native Python SSHv2 protocol library.
  • pynacl - Python binding to the Networking and Cryptography (NaCl) library.

Data Analysis

  • Pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.
  • Blaze - NumPy and Pandas interface to Big Data.
  • Open Mining - Business Intelligence (BI) in Pandas interface.
  • Orange - Data mining, data visualization, analysis and machine learning through visual programming or scripts.
  • Optimus - Agile Data Science Workflows made easy with PySpark.

Database

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

Database Drivers

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

Data Validation

  • colander - Validating and deserializing data obtained via XML, JSON, an HTML form post.
  • Cerberus - A lightweight and extensible data validation library.
  • jsonschema - An implementation of JSON Schema for Python.
  • schema - A library for validating Python data structures.
  • Schematics - Data Structure Validation.
  • valideer - Lightweight extensible data validation and adaptation library.
  • voluptuous - A Python data validation library.

Data Visualization

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

Date and Time

  • pytz - World timezone definitions, modern and historical. Brings the tz database into Python.
  • Chronyk - A Python 3 library for parsing human-written times and dates.
  • dateutil - Extensions to the standard Python datetime module.
  • delorean - A library for clearing up the inconvenient truths that arise dealing with datetimes.
  • moment - A Python library for dealing with dates/times. Inspired by Moment.js.
  • Pendulum - Python datetimes made easy.
  • PyTime - A easy-use Python module which aims to operate date/time/datetime by string.
  • when.py - Providing user-friendly functions to help perform common date and time actions.
  • maya - Datetimes for Humans.

Debugging Tools

  • ipdb - IPython-enabled pdb.
  • pudb - A full-screen, console-based Python debugger.
  • wdb - An improbable web debugger through WebSockets.
  • lptrace - strace for Python programs.
  • manhole - Debugging UNIX socket connections and present the stacktraces for all threads and an interactive prompt.
  • pyringe - Debugger capable of attaching to and injecting code into Python processes.
  • python-hunter - A flexible code tracing toolkit.
  • line_profiler - Line-by-line profiling.
  • memory_profiler - Monitor Memory usage of Python code.
  • profiling - An interactive Python profiler.
  • py-spy - A sampling profiler for Python programs. Written in Rust.
  • vprof - Visual Python profiler.
  • icecream - Inspect variables, expressions, and program execution with a single, simple function call.
  • django-debug-toolbar - Display various debug information for Django.
  • django-devserver - A drop-in replacement for Django's runserver.
  • pyelftools - Parsing and analyzing ELF files and DWARF debugging information.
  • pdb++ - Another drop-in replacement for pdb.
  • pyflame - A ptracing profiler For Python.