An async GitHub API library


Keywords
github, sans-io, async, aiohttp, httpx, python, tornado, treq, twisted
License
Apache-2.0
Install
pip install gidgethub==4.2.0

Documentation

gidgethub

An asynchronous GitHub API library.

Development status

https://github.com/brettcannon/gidgethub/workflows/CI/badge.svg?event=push Documentation Status

Installation

Gidgethub is available on PyPI.

python3 -m pip install gidgethub

Gidgethub requires Python version 3.7 and up.

Goals

The key goal is to provide a base library for the GitHub API which performs no I/O of its own (a sans-I/O library). This allows users to choose whatever HTTP library they prefer while parceling out GitHub-specific details to this library. This base library is then built upon to provide an abstract base class to a cleaner API to work with. Finally, implementations of the abstract base class are provided for asynchronous HTTP libraries for immediate usage.

Alternative libraries

If you think you want a different approach to the GitHub API, GitHub maintains a list of libraries.

Aside: what's with the name?

I couldn't think of a good name that was somehow a play on "GitHub" or somehow tied into Monty Python. And so I decided to play off of GitHub's octocat mascot and use my own cat's name, Gidget, in some way. Since "Gidget" somewhat sounds like "git", I decided to go with "gidgethub".

Changelog

See the documentation for the full changelog.